DataGrid 在加载事件时为空
DataGrid is empty on loaded event
我有数据网格:
<DataGrid name:"DG" ItemSource="{Binding}"/>
并这样填写:
DG.ItemsSource = DataSet.Tables[0].DefaultView;
我需要更改列 headers。我是这样用的:
<DataGrid name:"DG" ItemSource="{Binding}" Loaded="FormatColumns"/>
DG.Columns[i].Header = "Name";
在我的 PC 上运行良好,但是当我在 Windows XP 的 PC 上启动此软件时,我意识到 DG
有 0 列,因为它 Loaded
.
这里有很多代码,例如:
DG.Columns[i].Header = "Name";
而且最好在其他活动之后使用它。那么这里有任何我可以处理并手动设置的事件吗?headers?
刚刚发现。如果 DataSet
为空,当我在 Windows XP 上启动此程序时,DataGrid
不会填充空列。这里完全是空的 DataGrid
.
所以,这是肮脏的解决方案:
if (DataGrid.Columns.Count == 0) return;
我有数据网格:
<DataGrid name:"DG" ItemSource="{Binding}"/>
并这样填写:
DG.ItemsSource = DataSet.Tables[0].DefaultView;
我需要更改列 headers。我是这样用的:
<DataGrid name:"DG" ItemSource="{Binding}" Loaded="FormatColumns"/>
DG.Columns[i].Header = "Name";
在我的 PC 上运行良好,但是当我在 Windows XP 的 PC 上启动此软件时,我意识到 DG
有 0 列,因为它 Loaded
.
这里有很多代码,例如:
DG.Columns[i].Header = "Name";
而且最好在其他活动之后使用它。那么这里有任何我可以处理并手动设置的事件吗?headers?
刚刚发现。如果 DataSet
为空,当我在 Windows XP 上启动此程序时,DataGrid
不会填充空列。这里完全是空的 DataGrid
.
所以,这是肮脏的解决方案:
if (DataGrid.Columns.Count == 0) return;