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

Scheduler timeline Reversed

3 Answers 113 Views
Scheduler and Reminder
This is a migrated thread and some comments may be shown as answers.
arsalanelec
Top achievements
Rank 1
arsalanelec asked on 25 May 2017, 08:41 AM

Hi,

i have a problem with timeline in scheduler. the timline start to end is from right to left instead of left to right. i set the "righrToLeft" to false and also i changed the culture to en-US but no effect.

another question is about the Appointment text in Persion or Arabic.how can show the Text Correctly? currectly the Words are in Revese direction. i just found a solution by disable the useHtml in appointmentElement.

please help me!

thanks in advanced

3 Answers, 1 is accepted

Sort by
0
Dess | Tech Support Engineer, Principal
Telerik team
answered on 25 May 2017, 01:29 PM
Hello , 

Thank you for writing.  

RadScheduler supports the right to left mode. Please refer to the following help article: http://docs.telerik.com/devtools/winforms/scheduler/localization/right-to-left-support
 
As to the question about reversed text of the appointments, it is a known issue. You can track its progress, subscribe for status changes and add your comments on the following link: https://feedback.telerik.com/Project/154/Feedback/Details/174806-fix-radscheduler-persian-text-is-rendered-in-reversed-order-in-appointmentelem
As you have already found out, the possible solution is to set the AppointmentElement.UseHtml property to false.

I hope this information helps. Should you have further questions I would be glad to help.
Regards,
Dess
Progress Telerik
Try our brand new, jQuery-free Angular 2 components built from ground-up which deliver the business app essential building blocks - a grid component, data visualization (charts) and form elements.
0
arsalanelec
Top achievements
Rank 1
answered on 25 May 2017, 04:20 PM

Thanks for your answer. my problem was in    :

 ((Telerik.WinControls.UI.RadSchedulerElement)(this.radScheduler1.GetChildAt(0))).RightToLeft = true;

it changed accidentally in designer. but i found there is a bug in RadScheduler  RightToLeft  mode. the appointment mouse resizing working in reverse so if i want to append to the left i should drag the right button and vise versa! its not depend on text language.

0
Accepted
Dess | Tech Support Engineer, Principal
Telerik team
answered on 26 May 2017, 01:16 PM
Hello,

Thank you for writing back.

I have logged it in our feedback portal and I have added a vote for it on your behalf. You can track its progress, subscribe for status changes and add your comments on the following link - feedback item.

I have also updated your Telerik points.

Currently, the possible solution that I can suggest is to use a custom AppointmentResizingBehavior:  

this.radScheduler1.SchedulerElement.ResizeBehavior = new MyResizingBehavior(this.radScheduler1.SchedulerElement);


public class MyResizingBehavior : AppointmentResizingBehavior
{
    RadScheduler scheduler;
 
    public MyResizingBehavior(SchedulerVisualElement activeOwner)
        : base(activeOwner)
    {
        scheduler = activeOwner.Scheduler;
    }
 
    protected override bool UpdateMouseCursor(Point mousePosition, Rectangle nearRect, Rectangle farRect)
    {
        bool result = base.UpdateMouseCursor(mousePosition, nearRect, farRect);
        if (scheduler.RightToLeft == RightToLeft.Yes )
        {
            FieldInfo leftFI = typeof(AppointmentResizingBehavior).GetField("leftResize", BindingFlags.NonPublic | BindingFlags.Instance);
            FieldInfo rightFI = typeof(AppointmentResizingBehavior).GetField("rightResize", BindingFlags.NonPublic | BindingFlags.Instance);
 
            if (nearRect.Contains(mousePosition) && scheduler.Cursor == Cursors.SizeWE)
            {
                leftFI.SetValue(this, false);
                rightFI.SetValue(this, true);
            }
            else if (farRect.Contains(mousePosition) && scheduler.Cursor == Cursors.SizeWE)
            {
                leftFI.SetValue(this, true);
                rightFI.SetValue(this, false);
            }
        }
        return result;
    }
}

Regards,
Dess
Progress Telerik
Try our brand new, jQuery-free Angular 2 components built from ground-up which deliver the business app essential building blocks - a grid component, data visualization (charts) and form elements.
Tags
Scheduler and Reminder
Asked by
arsalanelec
Top achievements
Rank 1
Answers by
Dess | Tech Support Engineer, Principal
Telerik team
arsalanelec
Top achievements
Rank 1
Share this question
or