Quartz.net Exemple simple

J'essaie de trouver un simple Quartz.Net exemple où quand on clique sur un bouton, elle lance le Quartz.Net la fonctionnalité.

J'ai été en mesure de prendre le Quartz.Net exemple (application console) et de changer certaines choses pour produire ce (SimpleExample.cs):

    public virtual void Run()
    {
        ISchedulerFactory sf = new StdSchedulerFactory();
        IScheduler sched = sf.GetScheduler();

        DateTimeOffset runTime = DateBuilder.EvenMinuteDate(DateTime.UtcNow);
        DateTimeOffset startTime = DateBuilder.NextGivenSecondDate(null, 10);

        IJobDetail job = JobBuilder.Create<HelloJob>()
            .WithIdentity("job1", "group1")
            .Build();
        ITrigger trigger = TriggerBuilder.Create()
            .WithIdentity("trigger1", "group1")
            .StartAt(runTime)
            .WithCronSchedule("5 0/1 * * * ?")
            .Build();

        sched.ScheduleJob(job, trigger);

        sched.Start();

    }

Mais je suis un peu confus quant à la façon dont on déclenche à partir d'un clic sur le bouton. Je pensais que je pouvais faire quelque chose comme ceci:

    private void button1_Click(object sender, EventArgs e)
    {
     code here....
    }

Mais cela ne fonctionne pas.

J'ai passé en revue les sites web suivants, mais pas tous ont été utile dans le démarrage à partir d'un clic sur le bouton.

http://www.mkyong.com/java/quartz-scheduler-example/
- Java, donc difficile pour moi de comprendre la différence (je suis nouveau à tout cela!).

http://www.hardcodet.net/2010/01/lightweight-task-slash-job-scheduling-with-silverlight-support
- Cela a été utile, mais il est clair pour moi comment Silverlight fonctionne avec une régulière .Net Forme. Semble comme un tout autre projet.

/////

Des modifications supplémentaires: 10/14/2011

J'ai examiné la suggestion de code et trouvé le lien suivant à un autre (simple) exemple.
http://simplequartzschedulerincsharp.blogspot.com/

Je suis allé de l'avant et de construire un formulaire simple avec quelques changements à l'auteur du code comme suit:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Quartz;
using Quartz.Impl;

//http://simplequartzschedulerincsharp.blogspot.com/

namespace QuartzExampleWF
{
    public partial class Form1 : Form
    {
        private static IScheduler _scheduler;

        public Form1()
        {
            InitializeComponent();

            ISchedulerFactory schedulerFactory = new StdSchedulerFactory();
            _scheduler = schedulerFactory.GetScheduler();

            AddJob();
        }
        public static void AddJob()
        {
            IMyJob myJob = new MyJob();
            JobDetail jobDetail = new JobDetail("Job1", "Group1", myJob.GetType());
            CronTrigger trigger = new CronTrigger("Trigger1", "Group1", "5 0/1 * * * ?");
            _scheduler.ScheduleJob(jobDetail, trigger);
            DateTime? nextFireTime = trigger.GetNextFireTimeUtc();
        }
        private void button1_Click(object sender, EventArgs e)
        {
            _scheduler.Start();

        }

        internal class MyJob : IMyJob
        {
            public void Execute(JobExecutionContext context)
            {
                DateTime now = DateTime.Now;

                DoMoreWork();
            }

            public void DoMoreWork()
            {
                //more code...
            }
        }
        internal interface IMyJob : IJob
        {
        }    
    }
 }

Ive jamais fait une classe interne avant et a couru dans la question de la référence à une zone de texte à l'intérieur. Par exemple, je suis en train de faire ce qui suit:

      public void Execute(JobExecutionContext context)
        {
            DateTime now = DateTime.Now;
            this.textbox1 = Now.value;
            DoMoreWork();
        }

Mais je ne peut pas faire référence à une zone de texte. J'aurais le même problème avec un datagrid ou toolStripStatusLabel. Quel est le meilleur moyen pour accéder à des objets comme une zone de texte ou un toolStripStatusLabel sous le code ci-dessus?

source d'informationauteur JAS