System.Windows.Forms.MethodInvoker
是否有WPF
等内置代理?
我正在将一些功能从WinForms
移植到WPF
,为此我不想导入winforms参考,WPF
中是否有相应的代理?
答案 0 :(得分:10)
你可以这样使用;
Dispatcher.BeginInvoke(new Action(delegate
{
// Do your work
}));
答案 1 :(得分:6)
MethodInvoker也用于WPF。您可以在Dispatcher.Invoke或Control.Invoke方法中使用它。您也可以使用具有许多覆盖的Action委托。它们都很有效率。
答案 2 :(得分:0)
例如,您具有按钮控件btnLogin 您可以像这样使用它:
在WPF中:
btnLogin.Dispatcher.Invoke(new Action(delegate
{
// Running on the UI thread
btnLogin.Content = "TEST";
}));
在Winform中:
btnLogin.Invoke((MethodInvoker)delegate {
// Running on the UI thread
btnLogin.Text = "TEST";
});
干杯!