Jos*_*Mak 5 c# xaml windows-8 windows-runtime winrt-xaml
我使用C#中的Visual Studio 11 Ultimate为Win 8创建了一个基本的Metro App.
这里的问题是我想显示随某些事件动态变化的文本.一个例子是一个应用程序,其中一个数字显示在屏幕上,并且只要点击鼠标就增加1.
我已经使用XAML绑定到我创建的数据结构,它确实获得了我需要显示的值,但问题是当这些值发生变化时,GUI上显示的数字不会改变.
如何将我的XAML绑定到动态更改的数据,以便GUI上的XAML显示也发生变化?
谢谢您的帮助!
- 编辑 -
我已经实现了INotifyPropertyChanged接口,但现在我从这行代码中收到一个异常:
PropertyChanged(this,new PropertyChangedEventArgs(propertyName));
这是异常信息:
该应用程序调用了一个为不同线程编组的接口.(来自HRESULT的异常:0x8001010E(RPC_E_WRONG_THREAD))
确保您绑定到(正确)的"数据结构"实现INotifyPropertyChanged,并在想要通知UI更改时调用PropertyChanged事件.
这是允许xaml层知道绑定数据中值何时发生变化的接口,并相应地进行更新.
编辑以响应新信息:
该应用程序调用了一个为不同线程编组的接口.(来自HRESULT的异常:0x8001010E(RPC_E_WRONG_THREAD))
这表明您正在从单独的线程中提升属性,这可能会导致问题.您可能需要使用CoreDispatcher.RunAsync将其封送回主线程.有关详细信息,请参阅此主题.
| 归档时间: | 
 | 
| 查看次数: | 4072 次 | 
| 最近记录: |