Starting with the 2010 Q2 release RadScheduler supports pop-up reminders for appointments.
Click the button to create an appointment with reminder:
After a few seconds a popup reminder will show up.
previous daynext daytoday
Set the EnableReminderField property to "true" to enable the support for reminders.
When binding to declarative data source you need to set DataReminderField as in this example.
Custom providers must be updated to persist the Appointment.Reminders collection. The ReminderCollection.ToString() / Reminder.TryParse methods should be used for serialization.
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="DefaultCS.aspx.cs" Inherits="Telerik.Web.Examples.Scheduler.RemindersExample.DefaultCS" %><%@ Register TagPrefix="telerik" Namespace="Telerik.Web.UI" Assembly="Telerik.Web.UI" %><%@ Register TagPrefix="qsf" Namespace="Telerik.QuickStart" %><%@ Register TagPrefix="qsf" TagName="Header" Src="~/Common/Header.ascx" %><%@ Register TagPrefix="qsf" TagName="HeadTag" Src="~/Common/HeadTag.ascx" %><%@ Register TagPrefix="qsf" TagName="Footer" Src="~/Common/Footer.ascx" %><%@ Register TagPrefix="sds" Namespace="Telerik.Web.SessionDS" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/tr/xhtml11/dtd/xhtml11.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head runat="server"> <qsf:HeadTag ID="Headtag1" runat="server" /></head><body class="BODY"> <form id="form1" runat="server"> <qsf:Header ID="Header1" runat="server" NavigationLanguage="C#" /> <telerik:RadScriptManager runat="Server" ID="RadScriptManager1" /> <telerik:RadAjaxManager ID="RadAjaxManager1" runat="server"> <AjaxSettings> <telerik:AjaxSetting AjaxControlID="RadScheduler1"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="RadScheduler1" LoadingPanelID="RadAjaxLoadingPanel1" /> </UpdatedControls> </telerik:AjaxSetting> <telerik:AjaxSetting AjaxControlID="CreateAppointment"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="RadScheduler1" LoadingPanelID="RadAjaxLoadingPanel1" /> </UpdatedControls> </telerik:AjaxSetting> </AjaxSettings> </telerik:RadAjaxManager> <telerik:RadAjaxLoadingPanel ID="RadAjaxLoadingPanel1" runat="server" /> <div class="bigModule"> <div class="bigModuleBottom"> <p> Starting with the 2010 Q2 release RadScheduler supports pop-up reminders for appointments.</p> <p> Click the button to create an appointment with reminder:</p> <div> <asp:Button runat="server" ID="CreateAppointment" Text="Create Appointment with reminder" OnClick="CreateAppointment_Click" /> </div> <p> After a few seconds a popup reminder will show up. </p> </div> </div> <div class="exampleContainer"> <telerik:RadScheduler runat="server" ID="RadScheduler1" TimeZoneOffset="03:00:00" SelectedView="MonthView" OverflowBehavior="Expand" DataSourceID="AppointmentsDataSource" DataKeyField="ID" DataStartField="Start" DataEndField="End" DataSubjectField="Subject" DataRecurrenceField="RecurrenceRule" DataRecurrenceParentKeyField="RecurrenceParentID" DataReminderField="Reminder"> <AdvancedForm Modal="true" /> <Reminders Enabled="true" /> <TimeSlotContextMenuSettings EnableDefault="true" /> <AppointmentContextMenuSettings EnableDefault="true" /> </telerik:RadScheduler> <sds:SessionDataSource ID="AppointmentsDataSource" runat="server" DisplayWarning="false" PrimaryKeyFields="ID" ProviderName="System.Data.SqlClient" ConnectionString="<%$ ConnectionStrings:TelerikConnectionString %>" SelectCommand="SELECT * FROM [Appointments]" InsertCommand="INSERT INTO [Appointments] ([Subject], [Description], [Start], [End], [RecurrenceRule], [RecurrenceParentID], [Reminder]) VALUES (@Subject, @Description, @Start, @End , @RecurrenceRule, @RecurrenceParentID, @Reminder)" UpdateCommand="UPDATE [Appointments] SET [Subject] = @Subject, [Description] = @Description, [Start] = @Start, [End] = @End, [RecurrenceRule] = @RecurrenceRule, [RecurrenceParentID] = @RecurrenceParentID, [Reminder] = @Reminder WHERE (ID = @ID)" DeleteCommand="DELETE FROM [Appointments] WHERE [ID] = @ID"> <DeleteParameters> <asp:Parameter Name="ID" Type="Int32" /> </DeleteParameters> <UpdateParameters> <asp:Parameter Name="ID" Type="Int32" /> <asp:Parameter Name="Subject" Type="String" /> <asp:Parameter Name="Description" Type="String" /> <asp:Parameter Name="Start" Type="DateTime" /> <asp:Parameter Name="End" Type="DateTime" /> <asp:Parameter Name="RecurrenceRule" Type="String" /> <asp:Parameter Name="RecurrenceParentID" Type="Int32" /> <asp:Parameter Name="Reminder" Type="String" /> </UpdateParameters> <InsertParameters> <asp:Parameter Name="Subject" Type="String" /> <asp:Parameter Name="Description" Type="String" /> <asp:Parameter Name="Start" Type="DateTime" /> <asp:Parameter Name="End" Type="DateTime" /> <asp:Parameter Name="RecurrenceRule" Type="String" /> <asp:Parameter Name="RecurrenceParentID" Type="Int32" /> <asp:Parameter Name="Reminder" Type="String" /> </InsertParameters> </sds:SessionDataSource> </div> <qsf:Footer runat="server" ID="Footer1" /> </form></body></html>
Take your time to truly experience the power of RadControls for ASP.NET AJAX with a free 60-day trial backed up by Telerik’s unlimited dedicated support.
Download your RadControls for ASP.NET AJAX trial and jumpstart your development with the available Getting Started resources.
If you have any questions, do not hesitate to contact us at sales@telerik.com.