コード例 #1
0
        // este método solamente dispara el evento Finished con sus argumentos (sender, e)
        // se declara protected para que pueda heredarse como private y virtual para poder hacer override en la clase hija
        protected virtual void OnFinished(ProcesoFinishedEventArgs e)
        {
            EventHandler <ProcesoFinishedEventArgs> handler = Finished;

            if (handler != null)
            {
                handler(this, e);
            }
        }
コード例 #2
0
        // metodo que ejecuta el proceso de 5 segundos asíncronamente
        public async void Run(int value)
        {
            // Tarea paralela que espera a q termine (await) y devuelve un Object
            var ret = await Task <Object> .Run(() => LongOperation(value));

            // final del proceso, recogemos argumentos y disparamos el evento Finished (noticamos que hemos acabado)
            ProcesoFinishedEventArgs args = new ProcesoFinishedEventArgs();

            args.Result = (int)ret;
            OnFinished(args);
        }
コード例 #3
0
 private void Proceso_Finished(object sender, ProcesoFinishedEventArgs e)
 {
     lblResult.Text = e.Result.ToString();
 }