2011-01-14 36 views
0

我試圖配置Ext.NET asp.net日曆控件來查看我自己的事件,但我不知道該怎麼做?另外,Ext.NET Events類有自己的字段,但我需要把自己的字段放在日曆控件上查看。 ex: leaveId,leavetype,leaveReason,from,To等如何配置Ext.NET日曆控件?

我該如何做到這一點?任何ext.net框架的專家請回復。

回答

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;