This is a migrated thread and some comments may be shown as answers.

Using a Frame in the EditAppointmentDialogStyle

1 Answer 66 Views
ScheduleView
This is a migrated thread and some comments may be shown as answers.
Nick
Top achievements
Rank 1
Nick asked on 06 Mar 2012, 12:50 AM

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?

1 Answer, 1 is accepted

Sort by
0
Nick
Top achievements
Rank 1
answered on 08 Mar 2012, 07:34 PM
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
Tags
ScheduleView
Asked by
Nick
Top achievements
Rank 1
Answers by
Nick
Top achievements
Rank 1
Share this question
or