Windows 10 UAP - 编译数据绑定

问题描述:

根据Windows 10 SDK启动视频(http://www.microsoftvirtualacademy.com/training-courses/a-developers-guide-to-windows-10-preview?prid=ch9courselink),Windows 10通用应用程序平台有一种称为“编译数据绑定”的新型绑定。Windows 10 UAP - 编译数据绑定

而不是

"{Binding Path=..." 

新风格

"{x:Bind Path=..." 

然而,这只是一个编译器错误,无论是=被放置在上下文中不存在的背后抛出。
设置

"{x:Bind Path=DataContext...." 

也不起作用。
有没有人设法让新的绑定工作?有没有因为我似乎没有能够找到任何东西(关于该主题的任何文件甚至没有一个样品,你可以“反向engeneer” ......

更新:
感谢尼克的回应,我可以添加以下内容:
因为我通常在Page/UserControl初始化后插入视图模型,所以Page/UserControl似乎没有注意到更新后的ViewModel属性(即使Page/UserControl实现并“触发”INotifyPropertyChanged)。 Pages/UserControls中有一个名为Bindings的新字段,它可以强制执行所有已编译数据绑定的重置。

所以一旦你改变你的视图模型(或X引用的另一个属性:绑定),你可以简单地调用:

Binding.UpdateAll() 

这样的页/用户控件重新评估所有收集的数据绑定和接受“数据上下文切换”。

+0

这是否表示 “×:绑定” 是不与非基于页面的ViewModels如MvvmLight有用吗? – 2015-05-06 03:55:46

+0

回答我自己的问题重新MvvmLight。只需在代码的构造函数中捕获视图模型并将其作为绑定的一部分引用即可,如下所示: – 2015-05-06 18:58:40

+0

找不到Binding.UpdateAll方法。 – Christian80 2015-05-14 18:05:56

希望这有助于 - http://nicksnettravels.builttoroam.com/post/2015/04/26/Compiled-DataBinding-in-Windows-Universal-Applications-(UAP).aspx 这解释了上下文是什么,以及如何一些编译绑定生成

+0

非常感谢! – 2015-04-28 11:51:28

+0

非常感谢。伟大的博客文章! – 2015-05-28 13:00:10

我就补充这两个环节正式文件,因为它现在的价格和内容似乎有关到主题。

1){x:Bind} markup extension

2){x:Bind} and {Binding} feature comparison