我正在使用.NET开发一个类库,最终会被其他开发人员使用。这个类库利用了几个工作线程,这些线程会触发状态事件,从而更新WinForms / WPF应用程序中的一些UI控件。
通常,每次更新都需要在WinForms上检查.InvokeRequired属性或等价的WPF属性,并在主UI线程上调用该属性以进行更新。这很快就变得老套,让最终的开发人员这样做并不合适,因此...
我的类库是否有办法从主UI线程触发/调用事件/委托?
特别地...
- 我应该自动“检测”要使用的“主”线程吗?
- 如果不是这样,我是否应该要求最终的开发人员在应用程序启动时调用某个(伪)
UseThisThreadForEvents()
方法,以便我可以从该调用中获取目标线程?