2009-08-08 124 views
1

我已经在C#中创建了一个WPF takelit数据网格,并且ItemsSource在XAML中设置。这些列是自动生成的。C#WPF datagrid:列数始终等于0

我想做一个使用ObservableCollection的数据网格,非常像这个website上的内容。

在底部你会发现,你可以下载一个样本(这里是link

我的问题是,我试图改变特定列的某些特性(例如:Datagrid.Columns [指数]。Property)但是这似乎不起作用,因为列数始终等于0.因此,我无法通过使用我想使用的索引来更改属性,因为Columns集合中似乎没有任何内容。然而在运行时还有显示的列。

那么,怎么可能列数等于0呢?

我怎样才能改变一个特定列的属性在我的情况?

回答

5

我终于找到了!列数等于0的原因是因为列尚未生成。为了更改属性,我必须使用AutoGeneratedColumns事件并更改其中的属性。

+0

上帝保佑你:) – 2013-11-27 23:19:15

1

根据几个论坛的经验,如果自动生成列,则无法通过列属性访问列。我不知道这是为什么,但之前已经看到。

+0

可以访问某个索引处Columns的属性,但Columns集合中没有列,因为它们尚未生成。所以如果你尝试这样做,它会失败。 – Partial 2009-08-08 23:34:35