C# 从可移植库更新用户界面

C# 从可移植库更新用户界面,c#,windows-runtime,C#,Windows Runtime,我正在寻找一种从可移植库更新绑定值的方法。这是我的应用程序的结构: 我的解决方案: MyUiClass是从.xaml中的SecondClass扩展而来的:{Binding IsBusy} 便携式图书馆 ->二等舱由一等舱扩展而来 ->第一个类,包含IsBusy变量的定义。 我想调用NotifyPropertyChangedIsBusy;但是我得到了一个异常,因为我不知道如何从可移植库访问主线程。什么是异常?在WPF中,您可以从任何线程引发PropertyChanged事件,绑定系统负责将通知封送

我正在寻找一种从可移植库更新绑定值的方法。这是我的应用程序的结构:

我的解决方案:

MyUiClass是从.xaml中的SecondClass扩展而来的:{Binding IsBusy} 便携式图书馆 ->二等舱由一等舱扩展而来 ->第一个类,包含IsBusy变量的定义。
我想调用NotifyPropertyChangedIsBusy;但是我得到了一个异常,因为我不知道如何从可移植库访问主线程。

什么是异常?在WPF中,您可以从任何线程引发PropertyChanged事件,绑定系统负责将通知封送到适当的线程。这是我得到的异常:system.Runtime.InteropServices.COMException 0x8001010E:应用程序调用了为不同线程封送的接口。来自HRESULT的异常:0x8001010E RPC_E_错误_线程位于System.Runtime.InteropServices.WindowsRuntime.PropertyChangedEventArgsHaler.ConvertToNativePropertyChangedEventArgs managedArgsAh,因此它是WinRT,而不是WPF;标签把我弄糊涂了。嗯,您需要一种方式来访问调度器;我的方法是创建一个接口,例如IDispatcherService来抽象Dispatcher,并将其注入到您的ViewModel中,以使其能够访问DispatcherOk,谢谢您的回答,我将尝试一下。对不起,这个标签不是我加的。