Task Scheduler is a class that schedules and automatically fires events at a time you specify. All important triggers are implemented: OnlyOneTime, Daily, Weekly and Monthly.
We need for one of our Projects a Scheduler that
OneTimeOnly, Daily, Weekly and MonthlyDayOfMonth and WeekdayCheckDate(DateTime date) TriggerItems to and from XML| Field | Description |
StartDate |
Specifies the first Date on which the trigger will fire |
EndDate |
Specifies the last Date on which the trigger will fire |
TriggerTime |
Specifies the Time on which the trigger will fire |
Enabled |
Enable / Disable the trigger |
TriggerSettings |
Set the appropriate trigger-dates as described below |
TriggerItem.TriggerSettings Overview:
To activate a specific Date just set the appropriate flag(s):
// Activate Sunday on weekly trigger. triggerItem.TriggerSettings.Weekly.DaysOfWeek[(int)DayOfWeek.Sunday] = true; // Activate last Friday in January and February triggerItem.TriggerSettings.Monthly.Month[(int)TaskScheduler.MonthOfTheYeay.January] = true; triggerItem.TriggerSettings.Monthly.Month[(int)TaskScheduler.MonthOfTheYeay.February] = true; triggerItem.TriggerSettings.Monthly.DaysOfMonth[(int)TaskScheduler.DayOccurrence.Last] = true; triggerItem.TriggerSettings.Monthly.WeekDay[(int)DayOfWeek.Sunday] = true;
TaskScheduler.
// Create the TaskScheduler TaskScheduler _taskScheduler = new TaskScheduler();
TaskScheduler.TriggerItem triggerItem = new TaskScheduler.TriggerItem(); triggerItem.Tag = textBoxlabelOneTimeOnlyTag.Text; triggerItem.StartDate = dateTimePickerStartDate.Value; triggerItem.EndDate = dateTimePickerEndDate.Value; triggerItem.TriggerTime = dateTimePickerTriggerTime.Value; // And the trigger-Event :) triggerItem.OnTrigger += new TaskScheduler.TriggerItem.OnTriggerEventHandler( triggerItem_OnTrigger);
Settings for "OneTimeOnly"
TriggerItem.TriggerSettings.OneTimeOnly.Active = checkBoxOneTimeOnlyActive.Checked;
triggerItem.TriggerSettings.OneTimeOnly.Date =
dateTimePickerOneTimeOnlyDay.Value.Date;
Settings for "Daily"
triggerItem.TriggerSettings.Daily.Interval = (ushort)numericUpDownDaily.Value;
Settings for "Weekly"
for (byte day = 0; day < 7; day++) // Set the active Days triggerItem.TriggerSettings.Weekly.DaysOfWeek[day] = checkedListBoxWeeklyDays.GetItemChecked(day);
Settings for "Monthly"
for (byte month = 0; month < 12; month++) // Set the active Months triggerItem.TriggerSettings.Monthly.Month[month] = checkedListBoxMonthlyMonths.GetItemChecked(month); // Set the active Days (0..30 = Days, 31=last Day) for monthly trigger for (byte day = 0; day < 32; day++) triggerItem.TriggerSettings.Monthly.DaysOfMonth[day] = checkedListBoxMonthlyDays.GetItemChecked(day); // Set the active weekNumber and DayOfWeek // f.e. the first monday, or the last friday... // 0..4: first, second, third, fourth or last week for (byte weekNumber = 0; weekNumber < 5; weekNumber++) triggerItem.TriggerSettings.Monthly.WeekDay.WeekNumber[weekNumber] = checkedListBoxMonthlyWeekNumber.GetItemChecked(weekNumber); for (byte day = 0; day < 7; day++) triggerItem.TriggerSettings.Monthly.WeekDay.DayOfWeek[day] = checkedListBoxMonthlyWeekDay.GetItemChecked(day);
triggerItem.Enabled = true; // Set the Item-Active - State _taskScheduler.AddTrigger(item); // Add the trigger to List _taskScheduler.Enabled = true; // Start the Scheduler
THE SOFTWARE AND THE ACCOMPANYING FILES ARE DISTRIBUTED "AS IS" AND WITHOUT ANY WARRANTIES WHETHER EXPRESSED OR IMPLIED. NO REPONSIBILITIES FOR POSSIBLE DAMAGES OR EVEN FUNCTIONALITY CAN BE TAKEN. THE USER MUST ASSUME THE ENTIRE RISK OF USING THIS SOFTWARE.
| You must Sign In to use this message board. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||