Rob*_*der 7 wpf xaml winrt-xaml
在WPF中,我可以这样做:
<TextBlock Text="{Binding Products.Count, StringFormat='{0} Products'}"
Run Code Online (Sandbox Code Playgroud)
Windows 8/WinRT中的等价物是什么,因为不再支持此语法?
你可以用这个:
<TextBlock>
<Run Text="{Binding Path=Products.Count}" />
<Run Text=" Products" />
</TextBlock>
Run Code Online (Sandbox Code Playgroud)
根据 MSDN 上的文档,WinRT 中不存在此功能(例如,StringFormat在Binding 类上)。
所以在你的 ViewModel 上进行格式化
public class MyViewModel
{
public IList<Product> Products { get; set; }
public string ProductsText
{
get
{
return string.Format("{0} Products", Products.Count);
}
}
}
Run Code Online (Sandbox Code Playgroud)
请注意,您可以挂钩来跟踪Products集合中的更改并通知ProductsText更改的属性。
并绑定到格式化属性:
<TextBlock Text="{Binding ProductsText}" />
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4369 次 |
| 最近记录: |