A few telerik newbie quesions

4 posts, 0 answers
  1. Abdullah
    Abdullah avatar
    4 posts
    Member since:
    Jun 2012

    Posted 03 Jun 2012 Link to this post

    Hi,

    I've just downloaded the trial copy of the software and am having a play ATM.  I've done some searching but havent found the answer to my questions.  I hope someone can help!!

    1. Is it possible to remove the toolbar (ref. radschedulateviewtoolbar attachment) from the RadScheduleView control?

    2. I want to create a custom view which would consist of a month view (on the left) which would populate a day view (on the right) each time a specfic day is selected in the month view.  Is this possible?

    3. When creating/editing appointments, is there a DelegateCommand I can use to bring up my own windows (popups), or event better is there a way I can use the telerik dialogs in my own views?

    Thanks
    Abs

  2. Konstantina
    Admin
    Konstantina avatar
    2332 posts

    Posted 05 Jun 2012 Link to this post

    Hi Abs,

    Straight to your questions:

    1. In order to remove the header of the ScheduleView you need to set the NavigationHeaderVisibility="Collapsed" property.
    2. The RadScheduleView control does support creating of custom views. However, in your case I would suggest you to use 2 controls bound to each other. The CurrentDate of the second ScheduleView which will display the one day view can be bound to the SelectedSlot property of the first ScheduleView control in MonthView. Alike example you could find in this online demo: ScheduleView->ScheduleView and TimeBar
    3. You could suppress the showing of the default dialogs by hooking to the ShowDialog event and canceling it. Then you will be able to show your own dialog. Another option is to customize the default dialogs. More information you could find in this help article: http://www.telerik.com/help/wpf/radscheduleview-features-custom-dialogs.html

    Hope this information helps.

    Greetings,
    Konstantina
    the Telerik team
    Explore the entire Telerik portfolio by downloading the Ultimate Collection trial package. Get it now >>
  3. UI for WPF is Visual Studio 2017 Ready
  4. Abdullah
    Abdullah avatar
    4 posts
    Member since:
    Jun 2012

    Posted 06 Jun 2012 Link to this post

    Konstantina, Thanks for getting back to me so quickly... I've been off for a few days celebrating the diamond Jubilee so have only just looked at your reply.

    Any chance you be a bit more specific with regards to binding the CurrentDate of the second ScheduleView (Day View) to the SelectedSlot of the Month View?  I tried this as you suggested but without much success

    From the "day view" ScheduleView control I set the current date using the following binding

    CurrentDate="{Binding ElementName=monthView, Path=SelectedSlot}"
    EDIT : I didn't realise I needed a converter for this. I have now got the the day view bound to the currently selected date in the "month view"

    EDIT :  A simple converter bound to the SelectedSlot is not sufficient, as it will not cover the scenario where a user clicks away from a date (month view) onto an appointment.  To cover this scenario you need to create a multi binding as shown below

    <telerik:RadScheduleView.CurrentDate>
        <MultiBinding Converter="{StaticResource CurrentDateConverter}">
            <Binding ElementName="monthView" Path="SelectedAppointment"/>
            <Binding ElementName="monthView" Path="SelectedSlot"/>
        </MultiBinding>
    </telerik:RadScheduleView.CurrentDate>

    The multi value converter was implemented as follows.

    public class CurrentDateConverter : IMultiValueConverter
    {
        public object Convert(object[] values, Type targetType, object parameter, System.Globalization.CultureInfo culture)
        {
            Appointment selectAppointment = values[0] as Appointment;
            if (selectAppointment != null)
            {
                return selectAppointment.Start.Date;
            }
            else
            {
                Slot selectedSlot = values[1] as Slot;
                if (selectedSlot != null)
                {
                    return selectedSlot.Start.Date;
                }
            }
             
            // if all else fails return todays date
            return DateTime.Now.Date;
        }
     
        public object[] ConvertBack(object value, Type[] targetTypes, object parameter, System.Globalization.CultureInfo culture)
        {
            throw new NotImplementedException();
        }
    }


    Also, do I still need to set the AppointmentSource?
    EDIT : Silly question really :) of course I do.  But whats the best way of filtering the Appointments for the currently selected date (as above)?

    Thanks,
    Abs
  5. Lancelot
    Lancelot avatar
    251 posts
    Member since:
    Jul 2012

    Posted 07 Jun 2012 Link to this post

    Hi Abs,

    You would need to set an appointments binding as well, like you've alluded to. This link will bring you to the documentation on the DataBinding features of RadScheduleView. Since you are using double binding on your CurrentDate converter, you can do the same on your Appointment by using an AppointmentsConverter".

    While you're in the documentation (if you look in the left pane, you can see all the other docs on the features of the control... a great read if you ask me) check out this section on updating the resources during runtime. It should give you some direction on how to ahieve your goals.

    If this doesn't help you, can you share your code and I'd be glad to help you through the issue.

    Good luck!
    Lancelot
Back to Top