将IProgress <string>注入参数传递的方法

时间:2016-11-10 12:55:59

标签: c# winforms progress-bar progress

我会开发一个简单的Windows窗体表单,包含一个文本区域,一个确定按钮和一个取消按钮。我会收到一个方法作为构造函数参数,我知道它有IProgress<string>CancellationToken参数,以及其他参数。

但是,IProgress<string>处理程序(将在我上面提到的文本区域上写入进度消息)和CancellationToken(将与“取消”按钮绑定)都位于表单内部,无法从外部。

我怎么能注射&#34;在方法开始之前,IProgressCancellationToken都是方法吗?我应该在显示表单之前将它们都公开并将它们绑定在一起,而不将该函数作为构造函数参数传递吗?

类似的东西:

var progressForm = new MyProgressForm();
// not currently working. Just a pseudo-algorithm.
progressForm.FunctionToExecute = MyFunction(param1, param2,
    progressForm.ProgressReporter, progressForm.CancellationToken);
progressForm.Show();

0 个答案:

没有答案