Wpf 如何将布尔值绑定到DataTemplate
我的RadGridView有一个绑定的数据模板:Wpf 如何将布尔值绑定到DataTemplate,wpf,xaml,telerik,telerik-grid,Wpf,Xaml,Telerik,Telerik Grid,我的RadGridView有一个绑定的数据模板: <DataTemplate x:Key="StatusTemplate"> <local:StatusIndicator Style="{StaticResource StatusIndicator}" IsEnabled="{Binding}" /> </DataTemplate> 我在GridViewDataColumn上使用它,如下所示,我从ItemsSource绑定布尔值: 但是分配给
<DataTemplate x:Key="StatusTemplate">
<local:StatusIndicator Style="{StaticResource StatusIndicator}" IsEnabled="{Binding}" />
</DataTemplate>
我在GridViewDataColumn上使用它,如下所示,我从ItemsSource绑定布尔值:
但是分配给DataMemberBinding的已启用和已连接属性不起作用,恐怕您无法对两列使用相同的
DataTemplate
。绑定路径不能“注入”到XAML中的模板中,这意味着需要为每个列创建一个具有特定绑定路径的唯一DataTemplate
:
<telerik:GridViewDataColumn DataMemberBinding="{Binding Enabled}">
<telerik:GridViewDataColumn.CellTemplate>
<DataTemplate>
<local:StatusIndicator Style="{StaticResource StatusIndicator}" IsEnabled="{Binding Enabled}" />
</DataTemplate>
</telerik:GridViewDataColumn.CellTemplate>
</telerik:GridViewDataColumn>
<telerik:GridViewDataColumn DataMemberBinding="{Binding Connected}">
<telerik:GridViewDataColumn.CellTemplate>
<DataTemplate>
<local:StatusIndicator Style="{StaticResource StatusIndicator}" IsEnabled="{Binding Connected}" />
</DataTemplate>
</telerik:GridViewDataColumn.CellTemplate>
</telerik:GridViewDataColumn>
如果<代码>数据板< /C>比较复杂,您可以考虑创建模板并以编程方式替换绑定路径:
<telerik:GridViewDataColumn DataMemberBinding="{Binding Enabled}">
<telerik:GridViewDataColumn.CellTemplate>
<DataTemplate>
<local:StatusIndicator Style="{StaticResource StatusIndicator}" IsEnabled="{Binding Enabled}" />
</DataTemplate>
</telerik:GridViewDataColumn.CellTemplate>
</telerik:GridViewDataColumn>
<telerik:GridViewDataColumn DataMemberBinding="{Binding Connected}">
<telerik:GridViewDataColumn.CellTemplate>
<DataTemplate>
<local:StatusIndicator Style="{StaticResource StatusIndicator}" IsEnabled="{Binding Connected}" />
</DataTemplate>
</telerik:GridViewDataColumn.CellTemplate>
</telerik:GridViewDataColumn>