WPF的DataGrid绑定ItemsSource后第一次加载数据有个别列移位的解决办法2014-03-28 cnblogs 热卡最近用WPF的DataGrid的时候,发现一个很弱智的问题,DataGrid的ItemsSource是绑定了一个属性:

然后取数给这个集合赋值的时候,第一次赋值,就会出现列移位

起初还以为是显卡的问题,结果今天来集成显卡的电脑上也一样出现,具体原因不详,以下是几种解 决办法:1.(首选,有效果)DataGrid的RowHeaderWidth="0",必须赋值为0,不能不赋值,也不能 赋其他值。2.(有效果)绑定的源一开始就要赋值,即至少要有一行数据。3.(效果不一,有的地方有效有的地方无效)不用绑定,每次获得数据后手动赋ItemsSource的值。4.(有效,比较繁琐)把每一条数据封装成对象,DataGrid封装成列模板,每一列绑定这个对象的属 性。