与x:Bind

问题描述

我对UWP和绑定非常陌生,但我相信我正在弄清楚并取得进展。但是,我不确定在设计模式下使用x:bind时是否做错了什么。当我绑定到视图模型时,它在应用程序运行时完美地工作,但是在设计模式下,元素内容(例如TextBlock文本,Button文本等)将变为空。这使设计变得非常困难,因为我不知道页面上实际的所有位置,并且元素大小趋于减小至零,因此几乎无法单击或移动它们。

Microsoft说here“ ...但是,如果您使用的是{x:Bind},则绑定至少会在设计图面上显示占位符值(即使对于项控件也是如此),因此您不必对样本数据的需求也是如此。”但是我什么都没有得到任何占位符数据。

这是元素的典型行:

<TextBlock x:Name="ItemCountLabel" Text="{x:Bind Path=ViewModel.ItemCountText,Mode=OneWay}"/>

我已经尝试了一些方法来使某些功能生效,例如使用回退值,但是我似乎找不到找到占位符文本的方法。有这样的事吗?难道我做错了什么?还是这就是原来的样子。

任何帮助表示赞赏。

解决方法

与x:Bind绑定时,UWP没有元素内容或文本

恐怕您无法使用x:Bind显示设计数据,因为x:Bind不支持设计时数据。由{x:Bind}{Binding}创建的绑定对象在功能上是等效的。但是{x:Bind}执行专用代码,该代码在编译时生成,这意味着FallbackValue指定一个值,当无法解析源或路径时显示。)属性无法预测绑定路径是否为 解决。

对于这种情况,我们建议在设计时使用BindingFallbackValue,如下所示。

<TextBlock Foreground="Red" x:Name="ItemCountLabel" Text="{Binding ItemCountText,FallbackValue='Test Value',Mode=OneWay}"/>

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...