更新时间:2022-05-15 02:44:55
首先创建一个DataGridTemplateColumn以包含按钮:
First create a DataGridTemplateColumn to contain the button:
<DataGridTemplateColumn>
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Button Click="ShowHideDetails">Details</Button>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
当按钮被点击时,更新包含DataGridRow的DetailsVisibility:
When the button is clicked, update the containing DataGridRow's DetailsVisibility:
void ShowHideDetails(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;
}
}