Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows phone 7 windows phone 7 EventDispatcher线程和UIThread_Windows Phone 7_Windows Phone 7.1 - Fatal编程技术网

Windows phone 7 windows phone 7 EventDispatcher线程和UIThread

Windows phone 7 windows phone 7 EventDispatcher线程和UIThread,windows-phone-7,windows-phone-7.1,Windows Phone 7,Windows Phone 7.1,我怀疑windows phone 7 EventDispatcher线程和UIThread是否相同或不同。如果两者都是不同的线程,那么如何访问委托方法或回调事件方法中的UIElement 请帮我找到答案。不,它们不是同一条线 如果在UIThread以外的任何线程上运行,则可以通过访问UI线程 要检查您是否在UI上运行,可以使用该方法。 要在您可以使用的UI线程上启动操作。使用需要在uithread中注册事件并调用Deployment.Current.Dispatcher.BeginInvoke(

我怀疑windows phone 7 EventDispatcher线程和UIThread是否相同或不同。如果两者都是不同的线程,那么如何访问委托方法或回调事件方法中的UIElement


请帮我找到答案。

不,它们不是同一条线

如果在UIThread以外的任何线程上运行,则可以通过访问UI线程

要检查您是否在UI上运行,可以使用该方法。

要在您可以使用的UI线程上启动操作。

使用需要在uithread中注册事件并调用Deployment.Current.Dispatcher.BeginInvoke(()=> {YourEventName();}
);

感谢Matt的快速回复,我知道除了UIThread,我们无法访问
UIElement
。如果我们想要,我们必须使用Dispatcher的beginInvoke技术,但我的问题是“我已经在画布上注册了鼠标移动事件”,在鼠标事件上的事件回调时,我正在访问Textblock,画布上没有beginInvoke,它不会引发任何异常如何?如果两者都是不同的线程。@在UI线程上触发响应UI事件的Anieh事件。这就是为什么您可以从这样的处理程序访问UI。否则,引用发件人可能会很棘手。