2012-07-30 81 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; 
     } 
    }