0

我试图配置 Ext.NET asp.net 日历控件来查看我自己的事件,但我不知道该怎么做?此外,Ext.NET Events 类有自己的字段,但我需要放置自己的字段以便在日历控件上查看。例如:leaveId、leavetype、leaveReason、from、To 等。

我怎样才能做到这一点?ext.net 框架的任何专家请回复。

4

1 回答 1

1

配置 Ext.NET 日历很容易完成,但是需要时间来理解日历只有在您给它提供由 Ext 提供的 EventCollection 对象中包装的事件时才有效。

以下是返回日历事件的 Web 服务方法示例。

[WebMethod]
public EventCollection GetEvents(DateTime start, DateTime end)
    {
        EventCollection results = new EventCollection();
        //....Fill the collection here.....
        return results;
    }

在页面上你需要这样的东西:

<ext:ResourceManager ID="ResourceManager1" runat="server" Theme="Gray" />
<ext:Viewport ID="Viewport1" runat="server" Layout="Border">
    <Items>
        <ext:Panel runat="server" Width="176" Region="West" Border="false">
            <Items>
                <ext:DatePicker ID="dtpCurrentDate" runat="server">
                    <Listeners>
                        <Select Fn="setStartDate" />
                        <BeforeRender Handler="this.showPrevMonth = this.showPrevMonth.createSequence(HighlightPostDates);this.showNextMonth = this.showNextMonth.createSequence(HighlightPostDates);this.onMonthClick = this.onMonthClick.createSequence(HighlightPostDates);" />
                    </Listeners>
                </ext:DatePicker>
            </Items>
        </ext:Panel>
        <ext:CalendarPanel runat="server" ID="pnlCalendar" Region="Center" >
        <MonthView runat="server"></MonthView>
        <WeekView runat="server"></WeekView>
        <DayView  runat="server"></DayView>
            <GroupStore runat="server" ID="storeGroups">
                <Groups>
                    <ext:Group CalendarId="1" Title="Event Type 1" />
                    <ext:Group CalendarId="2" Title="Event Type 2" />
                </Groups>
            </GroupStore>
            <EventStore ID="EventStore1" runat="server" DateFormat="M$" ShowWarningOnFailure="false">
                <Proxy>
                    <ext:HttpProxy Json="true" />
                </Proxy>
                <Reader>
                    <ext:JsonReader Root="d" />
                </Reader>
                <BaseParams>
                    <ext:Parameter Name="start" Value="" Mode="Value" />
                    <ext:Parameter Name="end" Value="" Mode="Value" />
                </BaseParams>
                <Listeners>
                    <Load Fn="HighlightPostDates" />
                </Listeners>
            </EventStore>
        </ext:CalendarPanel>
    </Items>
</ext:Viewport>

在你后面的代码中,通过以下方式连接两者:

((HttpProxy)this.pnlCalendar.EventStore.Proxy.Proxy).Url = "Method URL...";
            ((HttpProxy)this.pnlCalendar.EventStore.Proxy.Proxy).Method = HttpMethod.POST;
于 2011-08-15T16:08:43.630 回答