c# - MvvmCross RaisePropertyChanged

标签 c# mvvmcross win-universal-app inotifypropertychanged

为了在通用应用程序中获取 MvvmCross PropertyChanged 事件,我必须设置 ShouldAlwaysRaiseInpcOnUserInterfaceThread(false)。您能解释一下为什么会这样吗?经过 3 个小时的调查,为什么绑定(bind)不起作用,我偶然发现了这个方法。一旦调用此方法,一切都会正常工作。

最佳答案

RaisePropertyChanged 默认情况下将 PropertyChanged 事件编码到 UI 线程。因此,如果没有设置调度程序(例如在单元测试中),则根本不会引发您的事件。所以你设置了

ShouldAlwaysRaiseInpcOnUserInterfaceThread(false);

更多详情请参见this

关于c# - MvvmCross RaisePropertyChanged,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34831351/

相关文章:

c# - 使用 ASP.NET 4.5 捆绑和 CDN(例如 CloudFront)

c# - 命名空间中不存在名称 TemplateSelector

ios - 滚动时 MvxTableViewSource DequeueReusableCell 问题

ios - 当链接器 "Link All"在 iOS 的 MvvmCross 中启用时,方法 ViewModel.Init 接收 null 作为参数

c# - 从应用程序安装文件夹的子文件夹中读取文件

c# - 为什么 double.Parse() 仅通过 rdp 抛出 FormatException?

c# - 模型略有变化的多个数据库。我如何允许 Entity Framework 在运行时删除列?

c# - Sqlite-net 扩展关系始终为空

c# - 如何在没有 "Enviroment"的情况下获取 Windows 通用应用程序中某些特殊文件夹的路径

javascript - RTCPeerConnection 是否适用于 Microsoft Edge?