2012-07-30 82 views
0

我在WPF中创建了一个Datagrid控件,其中每行的单元格中有一个按钮Datagrid中的按钮

Column(Subgraph)。我怎样才能使按钮可见只有一些细胞行在子图列。

XAML: 
<DataGridTemplateColumn x:Name="subgraphtyp" Header="H" Width="50"> 
     <DataGridTemplateColumn.CellTemplate> 
      <DataTemplate> 
       <Button Name="btnTable" Visibility="Visible" Height="20" Width="25" 
         Click="Button_Table_Click"> 
        <Image Height="16" Source="Subgraph.png" Stretch="Fill" Width="16"/> 
       </Button> 
      </DataTemplate> 
     </DataGridTemplateColumn.CellTemplate> 
</DataGridTemplateColumn> 

回答

2

最简单的方法是将按钮的可见性绑定到网格中的某个值,以确定它是否对该行可见。基本上,在后端代码中创建一个检索该行数据的函数,对其进行解析,然后在显示按钮时返回“Visible”,如果不显示该按钮则返回“Hidden”。

0

试试这个:

XAML属性用法

dataGridColumn Visibility="Visible"/> 
dataGridColumn Visibility="Collapsed"/> 


private void cbHideColumn_Changed(object sender, RoutedEventArgs e) 
    { 
    CheckBox cb = sender as CheckBox; 
    if (this.dataGrid1 != null) 
     { 
     if (cb.IsChecked == true) 
      this.dataGrid1.Columns[0].Visibility = Visibility.Collapsed; 
     else if (cb.IsChecked == false) 
      this.dataGrid1.Columns[0].Visibility = Visibility.Visible; 
     } 
    }