Missing setting "AllEvents" for mouse editing recurring events
Hi everybody,
is there a setting "apply to series" for changing event data with the mouse ? If I change the time at a recurring event by mouse only this event is changed. In my app the events are room usings in a school schedule. Changing time or room usually referes to the whole series. Otherwhise the very handy mouse editing is useless for this application for recurring events.
regards
Uwe
SIGN IN To post a reply.
3 Replies
1 reply marked as answer
AK
Alagumeena Kalaiselvan
Syncfusion Team
July 27, 2020 03:42 PM UTC
Hi Uwe,
Thanks for contacting Syncfusion support.
Query: Is there a setting “apply to series” for changing event data with the mouse?
We have checked the above query and you can update the recurring event series by customizing the recurring event start and end time in Scheduler’s Dragged and Resized event. Refer the below code for that.
|
<SfSchedule @ref="ScheduleObj" TValue="AppointmentData" Height="650px" SelectedDate="@(new DateTime(2020, 2, 14))">
<ScheduleEventSettings DataSource="@DataSource"></ScheduleEventSettings>
<ScheduleEvents TValue="AppointmentData" Dragged="DragEvent" Resized="OnResize"></ScheduleEvents>
</SfSchedule>
@code{
SfSchedule<AppointmentData> ScheduleObj;
public async Task DragEvent(DragEventArgs<AppointmentData> args)
{
if(args.Data.RecurrenceID != null)
{
args.Cancel = true;
var data = await ScheduleObj.GetOccurrencesByID(args.Data.Id);
data[0].StartTime = new DateTime(data[0].StartTime.Year, data[0].StartTime.Month, data[0].StartTime.Day, args.Data.StartTime.Hour, args.Data.StartTime.Minute, args.Data.StartTime.Second);
data[0].EndTime = new DateTime(data[0].EndTime.Year, data[0].EndTime.Month, data[0].EndTime.Day, args.Data.EndTime.Hour, args.Data.EndTime.Minute, args.Data.EndTime.Second);
await ScheduleObj.SaveEvent(data[0], CurrentAction.EditSeries);
}
}
public async Task OnResize(ResizeEventArgs<AppointmentData> args)
{
if(args.Data.RecurrenceID != null)
{
args.Cancel = true;
var data = await ScheduleObj.GetOccurrencesByID(args.Data.Id);
data[0].StartTime = new DateTime(data[0].StartTime.Year, data[0].StartTime.Month, data[0].StartTime.Day, args.Data.StartTime.Hour, args.Data.StartTime.Minute, args.Data.StartTime.Second);
data[0].EndTime = new DateTime(data[0].EndTime.Year, data[0].EndTime.Month, data[0].EndTime.Day, args.Data.EndTime.Hour, args.Data.EndTime.Minute, args.Data.EndTime.Second);
await ScheduleObj.SaveEvent(data[0], CurrentAction.EditSeries);
}
}
} |
Also, you can download this sample using the following link
Kindly get back to us if you need further assistance.
Regards
Alagumeena.K
Marked as answer
UH
Uwe Hein
July 28, 2020 02:48 PM UTC
Hi Alagumeena,
your solution seems to do the trick.
Thank you very much !!
regards
Uwe
VM
Vengatesh Maniraj
Syncfusion Team
July 29, 2020 04:18 AM UTC
Hi Uwe,
You are most welcome.
Please get in touch with us if you need any further assistance.
Regards,
Vengatesh
SIGN IN To post a reply.
- 3 Replies
- 3 Participants
- Marked answer
-
UH Uwe Hein
- Jul 24, 2020 03:16 PM UTC
- Jul 29, 2020 04:18 AM UTC