or
| public class myAppointment |
| { |
| private object m_id; |
| public object ID |
| { |
| get { return m_id; } |
| set { m_id = value; } |
| } |
| ... |
| private DateTime m_start; |
| public DateTime StartsOn |
| { |
| get { return m_start; } |
| set { m_start = value; } |
| } |
| ... |
| private myAppointmentFilter m_type = myAppointmentFilter.none; |
| public myAppointmentFilter Type |
| { |
| get { return m_type; } |
| set { m_type = value; } |
| } |
| ... |
| private List<int> m_attachedFiles = null; |
| public List<int> AttachedFiles |
| { |
| get { return m_attachedFiles; } |
| set { m_attachedFiles = value; } |
| } |
| } |
| public enum myAppointmentFilter {none, globalFollowUps, personalFollowUps, freeAppointments } public class DBWrapper { public List<myAppointment> LoadAppointments(int p_userID, myAppointmentFilter p_appFilter, DateTime p_start, DateTime p_end) { List<myAppointment> appointments = new List<myAppointment>(); switch (p_appFilter) { case myAppointmentFilter.freeAppointments: appointments.AddRange(LoadFreeAppointments(p_userID, p_start,p_end)); break; case myAppointmentFilter.personalFollowUps: appointments.AddRange(LoadFollowUps(p_start, p_end, true, p_userID)); break; case myAppointmentFilter.globalFollowUps: appointments.AddRange(LoadFollowUps(p_start, p_end, false, -1)); break; } return appointments; } private List<myAppointment> LoadFreeAppointments(int p_userID, DateTime p_start, DateTime p_end) {...} private List<myAppointment> LoadFollowUps(DateTime p_start, DateTime p_end, bool p_personal, int p_userID) {...} } |
| public partial class scheduler : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { m_currentAppointments = new List<myAppointment>(); //Nur Appointments der ausgewählten Filter laden foreach (int key in m_filterIDs.Keys) { CheckBox cb = PanelBar.Items[0].Items[0].FindControl(m_filterIDs[key]) as CheckBox; if (cb.Checked) { switch (m_filterIDs[key]) { case "cbFollowUps": m_currentAppointments.AddRange(m_schedulerDBDataProvider.LoadAppointments(1, myAppointmentFilter.globalFollowUps, DateTime.Today.AddDays(-3), DateTime.Today.AddDays(3))); break; case "cbPersonalFollowUps": m_currentAppointments.AddRange(m_schedulerDBDataProvider.LoadAppointments(1, myAppointmentFilter.personalFollowUps, DateTime.Today.AddDays(-3), DateTime.Today.AddDays(3))); break; case "cbFreeAppointments": m_currentAppointments.AddRange(m_schedulerDBDataProvider.LoadAppointments(1, myAppointmentFilter.freeAppointments, DateTime.Today.AddDays(-3), DateTime.Today.AddDays(3))); break; } } } CreateAppointments(); } ... private void CreateAppointments() { int id = 0; foreach (myAppointment app in m_currentAppointments) { //ExtAppointment inherits of Telerik.Web.UI.Appointment ExtAppointment telerikApp = new ExtAppointment(); telerikApp.ID = id; telerikApp.DBID = app.DBID; telerikApp.Title = app.Title; telerikApp.Start = app.StartsOn.ToUniversalTime(); telerikApp.End = app.EndsOn.ToUniversalTime(); telerikApp.Description = app.Description; telerikApp.UserID = app.UserID; telerikApp.Type = app.Type; switch (app.Type) { case myAppointmentFilter.globalFollowUps: telerikApp.CssClass = "rsCategoryRed"; telerikApp.AllowDelete = false; break; case myAppointmentFilter.personalFollowUps: telerikApp.CssClass = "rsCategoryOrange"; telerikApp.AllowDelete = false; break; case myAppointmentFilter.freeAppointments: telerikApp.CssClass = "rsCategoryGreen"; break; } RadScheduler1.InsertAppointment(telerikApp); id++; } } } |
| protected ExtAppointment Appointment |
| { |
| get |
| { |
| SchedulerFormContainer container = SchedulerFormContainer)BindingContainer; |
| return container.Appointment as ExtAppointment; |
| } |
| } |
| <telerik:RadGrid ID="rgTemplate" runat="server" AutoGenerateColumns="False" |
| GridLines="None" AllowPaging="True" AllowSorting="True" |
| PageSize="22" CellPadding="0" AllowMultiRowSelection="True" |
| OnNeedDataSource="rgTemplate_NeedDataSource" Skin="Vista" Width="100%"> |
| <MasterTableView ShowFooter="True" |
| cellspacing="-1" |
| DataKeyNames="MailExternalTemplateId" |
| ClientDataKeyNames="MailExternalTemplateId"> |
| <Columns> |
| <telerik:GridTemplateColumn ItemStyle-Width="1%"> |
| <ItemTemplate> |
| <asp:ImageButton ID="imgTemplate" runat="server" ImageUrl="~/Images/ico_16_2010_d.gif" /> |
| </ItemTemplate> |
| </telerik:GridTemplateColumn> |
| <telerik:GridBoundColumn |
| UniqueName="Name" |
| SortExpression="Name" HeaderText="Name" DataField="Name" ItemStyle-BackColor="#EAF3FF" |
| ItemStyle-Width="25%"> |
| </telerik:GridBoundColumn> |
| <telerik:GridTemplateColumn HeaderText="Description" UniqueName="Description" SortExpression="Description" ItemStyle-Width="20%"> |
| <ItemTemplate> |
| <asp:Label ID="lblDescription" runat="server" Text='<%# Eval("Description")%>'></asp:Label> |
| <asp:HiddenField ID="hdTemplateId" runat="server" Value='<%# Eval("MailExternalTemplateId")%>' /> |
| </ItemTemplate> |
| </telerik:GridTemplateColumn> |
| .. |

| <tools name="Database" dockable="true" dockingZone="Top" enabled="true"> |
| <tool name="InsertImage" Text="Insert Dealer Image" value="[d_logo]" /> |
| <tool name="InsertDBColumns" type="dropdown"> |
| <item name="First Name" value="[first_name]"></item> |
| <item name="Last Name" value="[last_name]"></item> |
| <item name="Address" value="[address]"></item> |
| <item name="City" value="[city]"></item> |
| <item name="State" value="[state]"></item> |
| <item name="Zip Code" value="[zip]"></item> |
| <item name="Contact Person" value="[contact]"></item> |
| <item name="Contact Email Link" value="[email]"></item> |
| <item name="Contact Phone #" value="[phone]"></item> |
| <item name="Contact Phone Ext." value="[contact_ext]"></item> |
| </tool> |
| </tools> |
| <style type="text/css"> |
| .reToolbar.Sunset .InsertImage |
| { |
| background-image:url(../images/img_icon.gif); |
| } |
| .reToolbar.Sunset .InsertDBColumns |
| { |
| background-image:url(../images/db_icon.gif); |
| } |
| </style> |
| <telerik:RadEditor ID="editor_DBEDITS" runat="server" Height="400px" |
| Skin="Sunset" |
| ToolsFile="UserControls/EditorToolbar.xml" Width="700px" OnClientCommandExecuting="OnEditorExecuting"> |
| <Content> |
| </Content> |
| </telerik:RadEditor> |