449得票6回答
Invoke()和BeginInvoke()有什么区别?

想知道 BeginInvoke() 和 Invoke() 之间有什么区别? 主要是它们各自的用途。 编辑:创建线程对象并在其上调用invoke与只在委托上调用 BeginInvoke() 之间有什么区别?还是它们是一样的?

85得票5回答
Dispatcher.BeginInvoke:无法将Lambda表达式转换为System.Delegate。

我正在尝试调用System.Windows.Threading.Dispatcher.BeginInvoke方法。该方法的签名如下:BeginInvoke(Delegate method, params object[] args) 我试图传递一个Lambda表达式而不是创建一个委托。_dis...

64得票2回答
如何使用BeginInvoke C#

你能为我解释一下这个吗:someformobj.BeginInvoke((Action)(() => { someformobj.listBox1.SelectedIndex = 0; })); 你能告诉我如何确切地使用begininvoke吗? Action类型是什么? 为什么...

52得票7回答
如何在C#中调用BeginInvoke/Invoke时获取返回值

我有一个小方法,这个方法应该是线程安全的。一切都运行良好,直到我想让它返回一个值而不是 void 时。当调用 BeginInvoke 时,我如何获取返回值?public static string readControlText(Control varControl) { if...

43得票1回答
Dispatcher Invoke(...)与BeginInvoke(...)混淆问题

我很困惑为什么在Count()方法中使用"BeginInvoke"无法让这个测试计数器应用程序与两个(或更多)同时运行的计数文本框一起工作。 你可以通过将BeginInvoke替换为Invoke来解决该问题。但这并没有解决我的困惑。 这是我所说的示例代码:public class Coun...

36得票8回答
System.Windows.Threading.Dispatcher和WinForms有什么关系?

一个 System.Windows.Threading.Dispatcher 在 WinForms 应用程序的 UI 线程上能否工作? 如果是,为什么呢?该组件来自于 WindowsBase.dll,看起来是一个 WPF 组件。 如果不行,我该如何将工作单元调回到 UI 线程上?我找到了 ...

26得票13回答
在C#中执行某项任务时如何显示进度条?

我想在执行某些工作时显示进度条,但这会挂起用户界面并且进度条不会更新。 我有一个带有ProgressBar的WinForm ProgressForm,它将以跑马灯的方式无限期地继续。using(ProgressForm p = new ProgressForm(this)) { //Do S...

26得票3回答
每个BeginInvoke都必须跟随一个EndInvoke吗?

MS文档中的此页面涵盖了Windows Forms应用程序中的异步操作,其中指出: 如果需要,您可以调用EndInvoke从委托中检索返回值,但这不是必需的。(已加重) 涵盖异步委托一般情况的此页面则说明了不同的内容: 无论使用哪种技术,始终要调用EndInvoke来完成异步调用。...

25得票7回答
Delegate.EndInvoke()是否真的必要?

我曾经阅读一些论坛和一两个stackoverflow问题,说使用Delegate.BeginInvoke时必须使用Delegate.EndInvoke。 然而,许多关于使用BeginInvoke的文章都没有提到使用EndInvoke。 此外,我已经部署了仅使用BeginInvoke的生产代码,...

19得票6回答
将匿名方法作为参数传递给BeginInvoke方法?

为什么你不能将匿名方法作为参数传递给BeginInvoke方法?我有以下代码:private delegate void CfgMnMnuDlg(DIServer svr); private void ConfigureMainMenu(DIServer server,) { Menu...