Questions tagged «dispatcher»

15
Python中的事件系统
您使用哪个Python事件系统?我已经知道pydispatcher,但是我想知道还能找到什么或常用的东西? 我对大型框架中的事件管理器不感兴趣,我宁愿使用可以轻松扩展的小型准系统解决方案。

5
在Windows应用商店应用中获取CoreDispatcher的正确方法
我正在构建Windows应用商店应用,并且我有一些代码需要发布到UI线程中。 为此,我想检索CoreDispatcher并使用它发布代码。 看来有几种方法可以这样做: // First way Windows.ApplicationModel.Core.CoreApplication.GetCurrentView().CoreWindow.Dispatcher; // Second way Window.Current.Dispatcher; 我不知道哪一个是正确的?还是两者相等?

4
使用Dispatcher.Invoke从非主线程更改WPF控件
我最近开始在WPF中编程,遇到了以下问题。我不知道如何使用该Dispatcher.Invoke()方法。我在线程方面有丰富的经验,我制作了一些简单的Windows Forms程序,其中我只是使用了 Control.CheckForIllegalCrossThreadCalls = false; 是的,我知道这很la脚,但是这些都是简单的监视应用程序。 事实是,现在我正在制作一个WPF应用程序,该应用程序在后台检索数据,我从一个新线程开始进行调用以(从Web服务器)检索数据,现在我想在WPF表单上显示它。问题是,我无法从该线程设置任何控件。甚至没有标签或其他任何东西。如何解决? 答案评论: @Jalfp: 因此,我在获取数据时在“新踩踏”中使用此Dispatcher方法吗?还是应该让后台工作人员检索数据,将其放入字段中,然后启动一个新线程,等待该字段填充,然后调用调度程序以将检索到的数据显示到控件中?

5
Dispatcher.BeginInvoke:无法将lambda转换为System.Delegate
我正在打电话System.Windows.Threading.Dispatcher.BeginInvoke。该方法的签名是这样的: BeginInvoke(Delegate method, params object[] args) 我正在尝试将其传递给Lambda,而不必创建委托。 _dispatcher.BeginInvoke((sender) => { DoSomething(); }, new object[] { this } ); 它给我一个编译器错误,说我 无法将lambda转换为System.Delegate。 委托的签名将对象作为参数并返回void。我的lambda与此匹配,但无法正常工作。我想念什么?

3
Dispatcher.CurrentDispatcher与Application.Current.Dispatcher
Dispatcher.CurrentDispatcher(in System.Windows.Threading)和Application.Current.Dispatcher(in System.Windows)之间有什么区别? 我的直觉告诉我,它Application.Current.Dispatcher永远不会改变,并且对当前应用程序中的所有线程都是全局的,同时Dispatcher.CurrentDispatcher可能会Dispatcher根据调用它的线程来创建新实例。 那是对的吗? 如果是这样,Dispatcher.CurrentDispatcher主要是为了多线程UI?
78 .net  wpf  dispatcher 

16
如何将UI Dispatcher传递给ViewModel
我应该能够访问属于View的Dispatcher,我需要将其传递给ViewModel。但是View应该对ViewModel一无所知,那么如何传递它呢?引入接口还是将其传递给实例,而不是创建将由View编写的全局调度程序单例?您如何在MVVM应用程序和框架中解决此问题? 编辑:请注意,由于我的ViewModels可能是在后台线程中创建的,所以我不能只Dispatcher.Current在ViewModel的构造函数中做。
74 .net  wpf  mvvm  dispatcher 
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.