绑定到ObservableCollection <T>时如何删除DataGrid的空白行?

我在这里得到坚果:

ObservableCollection<Employee> list = new ObservableCollection<Employee>(); dgEmployees.ItemsSource = list; 

当你debugging列表variables,它是空的(list.Count = 0),但是然后我把它绑定到一个DataGrid(WPFToolkit),它显示我一个空行。

在即时窗口中,对于dgEmployees.Items,它显示:

 dgEmployees.Items[0] {NewItemPlaceholder} 

 dgEmployees.Items[0].GetType() {Name = "NamedObject" FullName = "MS.Internal.NamedObject"} [System.RuntimeType]: {Name = "NamedObject" FullName = "MS.Internal.NamedObject"} 

这似乎发生在我把这个Datagrid放入一个TabControl后,但我不确定它有什么关系。

有谁知道如何删除这个空行?

在DataGrid的WPF 4.0版本中,同样的问题仍然存在,它是由ObservableCollection ItemsSource自动显示的新增行引起的。 设置IsReadOnly为真它太激进恕我直言。
我通过禁用CanUserAddRows属性解决了它,如果你不需要这种行为,但你仍然希望单元格被修改:

CanUserAddRows = “假”

我懂了

在Datagrid XAML上,放置属性:

 IsReadOnly="True" 

CanUserAddRows="False"IsReadOnly="True"两者的组合更好,以确保任何额外的不便。