Scheduler - Reminders

  • today
September, 2016
September, 2016
SMTWTFS
    123
45678910
11121314151617
18192021222324
252627282930 
       
Sep, 2016
  • Day
  • Week
  • Month
  • Timeline
Sun
Mon
Tue
Wed
Thu
Fri
Sat
  • Edit
  • Delete
  • New Appointment
  • New Recurring Appointment
  • Go to today

Click Snooze to be reminded again in:
Snooze
5 minutes before start

Demo Configurator

Isolate this demo as a stand-alone application
  • About this demo
  • C#
  • VB

As of Q2 2010 release of the Telerik UI for ASP.NET AJAX, the RadScheduler supports pop-up reminders for appointments.

in this demo you can find an example that demonstrates how reminders work. Note that first you need to set the EnableReminderField property to true to enable the support for reminders.

In case you need to bind the control to declarative data source you will need to set the DataReminderField demonstrated in this example. In addition to that the custom providers must be updated to persist the Appointment.Reminders collection.

The Reminders.MaxAge property keeps your reminder appointments alive for a specific period of time. Any appointment beyond that timespan will not show a reminder notification.

As of Q1 2013 SP1 release of the Telerik UI for ASP.NET AJAX, the RadScheduler supports reminder to the appointments that expires after certain time and at the same time does not show reminder notification.

  • DefaultCS.aspx
  • DefaultCS.aspx.cs
  • styles.css
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="DefaultCS.aspx.cs" Inherits="Scheduler.Examples.Reminders.DefaultCS" %>

<%@ Register TagPrefix="sds" Namespace="Telerik.Web.SessionDS" %>
<%@ Register TagPrefix="telerik" Namespace="Telerik.Web.UI" Assembly="Telerik.Web.UI" %>
<%@ Register TagPrefix="qsf" Namespace="Telerik.QuickStart" %>
<!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">
    <title>Telerik ASP.NET Example</title>
    <link rel="stylesheet" type="text/css" href="styles.css" />
</head>
<body>
    <form id="form1" runat="server">
    <telerik:RadScriptManager runat="server" ID="RadScriptManager1" />
    <telerik:RadSkinManager ID="RadSkinManager1" runat="server" ShowChooser="true" />
    <telerik:RadAjaxManager ID="RadAjaxManager1" runat="server">
        <AjaxSettings>
            <telerik:AjaxSetting AjaxControlID="RadScheduler1">
                <UpdatedControls>
                    <telerik:AjaxUpdatedControl ControlID="RadScheduler1" LoadingPanelID="RadAjaxLoadingPanel1"></telerik:AjaxUpdatedControl>
                </UpdatedControls>
            </telerik:AjaxSetting>
            <telerik:AjaxSetting AjaxControlID="CreateAppointment">
                <UpdatedControls>
                    <telerik:AjaxUpdatedControl ControlID="RadScheduler1" LoadingPanelID="RadAjaxLoadingPanel1"></telerik:AjaxUpdatedControl>
                </UpdatedControls>
            </telerik:AjaxSetting>
            <telerik:AjaxSetting AjaxControlID="RadComboBox1">
                <UpdatedControls>
                    <telerik:AjaxUpdatedControl ControlID="RadScheduler1" LoadingPanelID="RadAjaxLoadingPanel1"></telerik:AjaxUpdatedControl>
                </UpdatedControls>
            </telerik:AjaxSetting>
        </AjaxSettings>
    </telerik:RadAjaxManager>
    <telerik:RadAjaxLoadingPanel ID="RadAjaxLoadingPanel1" runat="server">
    </telerik:RadAjaxLoadingPanel>

    <div class="demo-container">
        <div class="demo-settings">
            <telerik:RadButton RenderMode="Lightweight" runat="server" ID="CreateAppointment" Text="Create an Appointment with Reminder"
                OnClick="CreateAppointment_Click">
            </telerik:RadButton>
        </div>

        <telerik:RadScheduler RenderMode="Lightweight" runat="server" ID="RadScheduler1"
            SelectedView="MonthView" OverflowBehavior="Expand" DataSourceID="AppointmentsDataSource"
            DataKeyField="ID" DataStartField="Start" DataEndField="End" DataSubjectField="Subject"
            DataRecurrenceField="RecurrenceRule" DataRecurrenceParentKeyField="RecurrenceParentID"
            DataReminderField="Reminder">
            <AdvancedForm Modal="true"></AdvancedForm>
            <Reminders Enabled="true"></Reminders>
            <TimeSlotContextMenuSettings EnableDefault="true"></TimeSlotContextMenuSettings>
            <AppointmentContextMenuSettings EnableDefault="true"></AppointmentContextMenuSettings>
        </telerik:RadScheduler>
        <asp:SqlDataSource ID="AppointmentsDataSource" runat="server" ProviderName="System.Data.SqlClient" ConnectionString="<%$ ConnectionStrings:TelerikConnectionString35 %>"
            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"></asp:Parameter>
            </DeleteParameters>
            <UpdateParameters>
                <asp:Parameter Name="ID" Type="Int32"></asp:Parameter>
                <asp:Parameter Name="Subject" Type="String"></asp:Parameter>
                <asp:Parameter Name="Description" Type="String"></asp:Parameter>
                <asp:Parameter Name="Start" Type="DateTime"></asp:Parameter>
                <asp:Parameter Name="End" Type="DateTime"></asp:Parameter>
                <asp:Parameter Name="RecurrenceRule" Type="String"></asp:Parameter>
                <asp:Parameter Name="RecurrenceParentID" Type="Int32"></asp:Parameter>
                <asp:Parameter Name="Reminder" Type="String"></asp:Parameter>
            </UpdateParameters>
            <InsertParameters>
                <asp:Parameter Name="Subject" Type="String"></asp:Parameter>
                <asp:Parameter Name="Description" Type="String"></asp:Parameter>
                <asp:Parameter Name="Start" Type="DateTime"></asp:Parameter>
                <asp:Parameter Name="End" Type="DateTime"></asp:Parameter>
                <asp:Parameter Name="RecurrenceRule" Type="String"></asp:Parameter>
                <asp:Parameter Name="RecurrenceParentID" Type="Int32"></asp:Parameter>
                <asp:Parameter Name="Reminder" Type="String"></asp:Parameter>
            </InsertParameters>
        </asp:SqlDataSource>
    </div>

    <qsf:ConfiguratorPanel runat="server">
        <Views>
            <qsf:View>
                <qsf:ComboBox ID="RadComboBox1" runat="server" Label="Show a Reminder Notification For: "
                AutoPostBack="true" OnSelectedIndexChanged="RadComboBox1_SelectedIndexChanged"
                EmptyMessage="Select a MaxAge value...">
                <Items>
                    <telerik:RadComboBoxItem Text="5 days" Value="5" Selected="true" />
                    <telerik:RadComboBoxItem Text="2 weeks" Value="14" />
                    <telerik:RadComboBoxItem Text="4 weeks" Value="28" />
                </Items>
            </qsf:ComboBox>
            </qsf:View>
        </Views>
    </qsf:ConfiguratorPanel>
            
    </form>
</body>
</html>

Find Assistance

Help Us Improve

Was this example helpful?