数据绑定到WPF中的静态属性

时间:2013-06-03 10:29:34

标签: wpf data-binding static

我有一个名为StockItem的班级 该类包含一些实例属性,包括Quantity 该类包含一些静态属性,包括Cart和CartTotalPrice 购物车类型为ObservableCollection CartTotalPrice返回购物车总价。

我创建了一个名为UCOrder的UserControl,允许用户将项目添加到购物车中 我创建了另一个UserControl,允许用户更改购物车项目的数量。

我在UCOrder的标记中声明了一个TextBlock 我想将TextBlock绑定到静态属性StockItem.CartTotalPrice,以便TextBlock显示当前的CartTotalPrice。
我该怎么办?

非常感谢任何帮助

1 个答案:

答案 0 :(得分:2)

<TextBlock Text="{Binding Source={x:Static StockItem.CartTotalPrice}}"/>

一开始看起来很奇怪,但Source告诉我们哪个是绑定的实际来源,通常是DataContext,但我们设置使用静态属性。使用path我们现在将在源对象上提供一个属性,但是因为我们已经在源代码中拥有了我们想要的东西,所以我们不设置默认情况下的路径“。”这意味着“直接拿源”。

但请注意您提问中的评论。虽然我刚刚回答了你的问题,但我也认为这样做是个坏主意,因为已经提到的原因。