我们有一个自定义的 DataGrid 控件,它动态生成由 XML 结构确定的列。
在创建每一列时,我们给它一个星号单位类型,因为我们要确保 DataGrid 中永远不会有任何水平滚动。
DataGridTextColumn column = new DataGridTextColumn();
column.Width = new DataGridLength(entity.DisplaySize, DataGridLengthUnitType.Star);
但是,我们注意到,当 DataGrid 被渲染时,它会以赋予列的最小尺寸进行渲染,然后一旦 DataGrid 完全渲染,它会调整列的大小以适当地适应 DataGrid。这会导致闪烁效果。
有没有人有任何可能的解决方案?也许如何在后台渲染 DataGrid,然后在列完成后显示?还是有其他想法?