您好我正在开发一个使用WPF MVVM显示数据的数据网格。我需要在用户选择单行时添加删除按钮。
<DataGridTemplateColumn Width="10*">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Button Visibility="Collapsed" Width="20" cal:Message.Attach="DeleteRow($dataContext)">Del</Button>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
我需要设置仅按钮选定行的可见性为true。我无法使用代码,因为这是在MVVM架构中。
答案 0 :(得分:2)
这是一个简单的方法
您的资源需要转换器
例如
<BooleanToVisibilityConverter x:Key="BooleanToVisibilityConverter" />
按钮的可见性
<Button Visibility="{Binding IsSelected,
RelativeSource={RelativeSource FindAncestor, AncestorType=DataGridRow},
Converter={StaticResource BooleanToVisibilityConverter}}"