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

UWP no Element Content or Text when Binding with x:Bind

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

Microsoft 表示 here“...但是如果您使用 {x:Bind},那么您的绑定至少会在设计界面上显示占位符值(即使是项目控件),所以您不需要对样本数据的需求完全相同。”但是我没有得到任何占位符数据。

这是元素的典型行:

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

我已经尝试了一些方法来使某些东西起作用,比如使用回退值,但我似乎找不到使用占位符文本的方法。有这样的事吗?难道我做错了什么?或者这就是它的样子。

感谢任何帮助。

UWP no Element Content or Text when Binding with x:Bind

恐怕你无法用x:Bind显示设计数据,因为x:Bind不支持design-time数据。 {x:Bind}{Binding} 创建的绑定对象在功能上基本相同。但是 {x:Bind} 执行 special-purpose 代码,它在 compile-time 处生成,这意味着 FallbackValue( 指定当无法解析源或路径时要显示的值。 ) 属性 无法预测绑定路径是否为 已解决。

对于场景,我们建议在设计时使用 BindingFallbackValue,如下所示。

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