I need the Expand / Collapse for RowDetailsTemplate

前端 未结 5 932
北荒
北荒 2020-12-09 09:56

I have a DataGrid. It has DataGrid.RowDetailsTemplate. When a button is clicked it should Expand / Collapse; how would I do that?

&         


        
5条回答
  •  伪装坚强ぢ
    2020-12-09 10:51

    Check this ...

    Adding a Button to a WPF DataGrid

    OR

    XAML :

    
        
            
        
    
        
            
                
    
                
            
        
    
        
            
            
            
        
    
        
            
                
            
        
    
    

    MainWindow.xaml.cs

    private void Expander_Expanded(object sender, RoutedEventArgs e)
    {
        for (var vis = sender as Visual; vis != null; vis = VisualTreeHelper.GetParent(vis) as Visual)
        if (vis is DataGridRow)
        {
            var row = (DataGridRow)vis;
            row.DetailsVisibility = row.DetailsVisibility == Visibility.Visible ? Visibility.Collapsed : Visibility.Visible;
            break;
        }
    }
    
    private void Expander_Collapsed(object sender, RoutedEventArgs e)
    {
        for (var vis = sender as Visual; vis != null; vis = VisualTreeHelper.GetParent(vis) as Visual)
            if (vis is DataGridRow)
            {
                var row = (DataGridRow)vis;
                row.DetailsVisibility = row.DetailsVisibility == Visibility.Visible ? Visibility.Collapsed : Visibility.Visible;
                break;
            }
    }
    

    Output

    enter image description here

提交回复
热议问题