您好我在WPF中有一个数据网格。 Column是一个按钮,绑定到int值。我想让按钮内容路径绑定到window.resource路径,例如当值为0时,按钮内容显示路径RightArrow,当值为1时,它显示LeftArrow。我怎么做?我是否必须使用IvalueConverter才能执行此操作?以下是我的xaml代码。
<Window.Resources>
<Path x:Key="RightArrow" Data="M4,15V9H12V4.16L19.84,12L12,19.84V15H4Z" Fill="Black" />
<Path x:Key="LeftArrow" Data="M20,10V14H11L14.5,17.5L12.08,19.92L4.16,12L12.08,4.08L14.5,6.5L11,10H20Z" Fill="Black" />
</Window.Resources>
<DataGrid Name="SomeDtg" >
<DataGridTemplateColumn Header="Interchangeble?" Width = "2*">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate >
<Button>
.......
</Button>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
答案 0 :(得分:1)
路径是一个控件。不要将控件创建为资源;他们一次只能有一个父母。你没有给出列绑定的属性的名称,所以我称之为driver
。
另一种方法是创建两个显示左箭头或右箭头的DataTemplates,并将这些箭头与触发器交换。这就是你如何将控件创建为资源:将它放在一个资源的DataTemplate中。每次应用DataTemplate内容的新实例都会创建。
EvenOddProperty
...
<Window.Resources>
<PathGeometry x:Key="RightArrow">M4,15V9H12V4.16L19.84,12L12,19.84V15H4Z</PathGeometry>
<PathGeometry x:Key="LeftArrow">M20,10V14H11L14.5,17.5L12.08,19.92L4.16,12L12.08,4.08L14.5,6.5L11,10H20Z</PathGeometry>
</Window.Resources>