【发布时间】:2013-12-05 19:08:48
【问题描述】:
我正在尝试根据项目的状态将静态资源绑定到视图模型项目。视图中有一个项目列表。
ViewModel 有一个布尔属性 State。 View 有一个 ItemsControl 绑定到 ObservableCollection
我为每个所需项目定义了两个资源字符串。
如何根据 State 的值显示正确的字符串?
谢谢, 埃里克
【问题讨论】:
标签: c# wpf binding staticresource
我正在尝试根据项目的状态将静态资源绑定到视图模型项目。视图中有一个项目列表。
ViewModel 有一个布尔属性 State。 View 有一个 ItemsControl 绑定到 ObservableCollection
我为每个所需项目定义了两个资源字符串。
如何根据 State 的值显示正确的字符串?
谢谢, 埃里克
【问题讨论】:
标签: c# wpf binding staticresource
要使用静态资源,您可以使用ObjectDataProvider。并根据布尔值将其绑定到您的视图,您可以使用正确的Converter
【讨论】:
将绑定与转换器一起使用。
这是一个例子:
<config:BoolToBrushConverter x:Key="Bool2Brush"
TrueBrush="{StaticResource OKStatusBrush}"
FalseBrush="{StaticResource ErrorStatusBrush}" />
<TextBlock Name="tbx1" Grid.Row="2" Grid.Column="1"
Background="{Binding Path=State, Converter={StaticResource Bool2Brush}}"...
了解如何让您的自定义转换器接受资源?只需在资源中定义转换器并引用您需要的两个。然后让绑定知道你的转换器。
【讨论】: