WPF单元格按钮在某些条件下隐藏

时间:2014-08-20 10:44:32

标签: mvvm data-binding wpfdatagrid

  • 我有数据源,在WPF中绑定到网格。数据来源是 一系列学生,有以下字段
  • 姓名,成绩

网格有3列


名称,成绩,设置

设置栏包含用于设置的简单按钮,如下所示

 <DataGridTemplateColumn Header="Settings" Width="75"  CanUserResize="False">
          <DataGridTemplateColumn.CellTemplate>
                 <DataTemplate>
                          <Button  Name="cSettings"   Click="cSettings_Click" Style="{DynamicResource EditSettingsButton}" Width="50" >
                          </Button>
                 </DataTemplate>
          </DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>

现在,如果等级等于一个,则仅显示“设置”按钮。 我可以在XAML中编写条件吗?即按钮的可见性应该在某种条件下?

尝试以下方法,但没有工作

<DataTemplate>
        <Button  Name="cSettings"   Click="cSettings_Click" Style="{DynamicResource EditSettingsButton}" Width="50" >
         <Style TargetType="{x:Type Button}">
            <Style.Triggers>
                 <DataTrigger Binding="{Binding Grade}" Value="1">
                     <Setter Property="Visibility" Value="Visible"></Setter>
                  </DataTrigger>
                   <DataTrigger Binding="{Binding Grade}" Value="2">
                     <Setter Property="Visibility" Value="Hidden"></Setter>
                  </DataTrigger>
             </Style.Triggers>
            </Style>
        </Button>
</DataTemplate>

由于

1 个答案:

答案 0 :(得分:0)

您可以尝试使用converter代替。见link