小编The*_*erd的帖子

在选定的数据网格上显示一个按钮

我有一个带有数字行的数据网格.每行都有DeleteRow按钮.只有选中的行才能显示此按钮.我认为可能至少有两种解决方案:

a)将按钮的Visibility属性绑定到包含DatGridRow的IsSelected属性

要么

b)使用按钮中的触发器仅在选择包含行时才可见.

这是我对选项b的代码,它不起作用:

<DataGridTemplateColumn Width="50">
<DataGridTemplateColumn.CellTemplate>
    <DataTemplate>
        <Button Content="X" Tag="{Binding}" Click="DeletRow_Click" Visibility="Hidden">
            <Button.Style>
                <Style x:Name="ButtonVisibility">
                    <Style.Triggers>
                        <DataTrigger Binding="{Binding RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type DataGridRow}},Path=IsSelected}" Value="True">
                            <Setter Property= "Button.Visibility" Value="Visible"/>
                        </DataTrigger>
                    </Style.Triggers>
                </Style>
            </Button.Style>
        </Button>
    </DataTemplate>
</DataGridTemplateColumn.CellTemplate>
Run Code Online (Sandbox Code Playgroud)

这可能很容易,但我一直盯着看,这让我眼花缭乱:S

谢谢

wpf datagrid visibility button selected

6
推荐指数
1
解决办法
4588
查看次数

标签 统计

button ×1

datagrid ×1

selected ×1

visibility ×1

wpf ×1