Using a Frame in the EditAppointmentDialogStyle

2 posts, 0 answers
  1. Nick
    Nick avatar
    2 posts
    Member since:
    Aug 2011

    Posted 05 Mar 2012 Link to this post

    We are utilizing the ScheduleView control to render our Calendar view (Month, Week, Day views) and allow CRUD on Appointments.  We have created a custom Appointment view model that implements the Telerik IAppointment interface and all other recommendations.  This all seems to be working great!  Now I am trying to override the standard Edit Appointment dialog with my own style and running into some errors. 

     

    We have a customer requirement for user workflow that requires us to show a "wizard"-type experience when creating and editing appointments.  This has been implemented as a set of sdk:Page objects.  I wish to render these pages within a navigation sdk:Frame in the Edit dialog and use UriMapping to navigate between them within the frame.  This is where I'm running into an issue.  My current style looks like this:

    <telerikScheduleView:RadScheduleView.EditAppointmentDialogStyle>
     <Style TargetType="telerik:SchedulerDialog">
      <Setter Property="Template">
        <Setter.Value>
          <ControlTemplate TargetType="telerik:SchedulerDialog">
            <sdk:Frame Source="Pages/PlanMeeting/MeetingInformation.xaml"
                        Navigated="PlanMeetingFrame_Navigated"
                        NavigationFailed="PlanMeetingFrame_NavigationFailed"  >
               <sdk:Frame.UriMapper>
                 <sdk:UriMapper>
                   <sdk:UriMapping Uri="" MappedUri="/Pages/PlanMeeting/MeetingInformation.xaml"/>
                   <sdk:UriMapping Uri="/PlanMeeting/Information/{meetingId}"
                                                MappedUri="/Pages/PlanMeeting/MeetingInformation.xaml?MeetingId={meetingId}"/>
                   <sdk:UriMapping Uri="/PlanMeeting/Attendees/{meetingId}"
                                                MappedUri="/Pages/PlanMeeting/MeetingAttendees.xaml?MeetingId={meetingId}"/>
                   <sdk:UriMapping Uri="/PlanMeeting/Agenda/{meetingId}"
                                                MappedUri="/Pages/PlanMeeting/MeetingAgendaItems.xaml?MeetingId={meetingId}"/>
                 </sdk:UriMapper>
              </sdk:Frame.UriMapper>
            </sdk:Frame>
          </ControlTemplate>
        </Setter.Value>
      </Setter>
     </Style>
    </telerikScheduleView:RadScheduleView.EditAppointmentDialogStyle>
                

     

    As you can see, while I'm creating a variety of UriMappings for navigation, I'm currently trying to just set the Source to an explicit page (I've also tried using my UriMappings to no avail).  When I run the application and launch the Edit Appointment Occurrence dialog, the modal Window launches but doesn't navigate to the intended page within the sdk:Frame.  Instead it replicates the source (Launching) page in the window.  So if my source calendar page is "Pages/Calendar.xaml", then the navigation Uri  of the frame at runtime is "Pages/Calendar.xaml" no matter what I initialize it to in the XAML for the Control Template.

     

    I've verified this via breakpoints in the Frame_Navigated event handler.

     

    My question to you - Do you have any idea if the ScheduleView Telerik control or the ScheduleDialog could be enforcing this?  Do you have any ideas on how to achieve what I am attempting, which is basically a custom wizard within the Edit Appointment ScheduleDialog?

  2. Nick
    Nick avatar
    2 posts
    Member since:
    Aug 2011

    Posted 08 Mar 2012 Link to this post

    As an FYI  the issue turned out to be the following:

    http://social.msdn.microsoft.com/Forums/eu/silverlightdeveloper/thread/0e5c7979-41a4-4669-aed0-dcac3e35be44
  3. DevCraft banner
Back to Top