取消选择RowDetailsTemplate后调整Datagrid高度

Pra*_*eep 5 c# wpf wpftoolkit wpfdatagrid

我正在使用RowDetailsTemplate显示行的嵌套数据网格.现在,当我选择一行来显示这个嵌套的数据网格时,数据网格的高度会扩展.但是当取消选择行时,它不会降低其高度.

  1. 有没有办法在折叠行详细信息后将数据网格大小调整为原始高度?

  2. 是否有可能以声明方式进行?

小智 1

找到了解决此问题的方法;在网格的选择更改事件上触发网格项目的刷新,这会导致网格重新绘制自身。

    private void dgVehicles_SelectionChanged(object sender, SelectionChangedEventArgs e)
    {
        DataGrid dg = sender as DataGrid;
        if (dg != null)
        {
            dg.Items.Refresh();
        }
        e.Handled = true;
    }
Run Code Online (Sandbox Code Playgroud)

这对我有用。希望能帮助到你。