1

我正在尝试有条件地在 WPF 4.0 DataGrid 的末尾添加一个空白行(而不是直接通过代码隐藏)。我尝试了以下但徒劳无功 -

我试图像这样获得 IEditableCollectionView 并在该界面上进行操作:

CollectionViewSource.GetDefaultView(myObservableCollection) as IEditableCollectionView

但是,这并没有按预期工作,因为CanAddNew属性为 true 的因素之一是将默认构造函数添加到集合的基础对象(Grid 绑定到的对象)。

问题:如果我添加一个默认构造函数,那么网格总是会添加一个空白行。我想添加一个条件(检查布尔值),但并非总是如此。如何在不为我的 ViewModel 类使用默认无参数构造函数的情况下做到这一点?

4

2 回答 2

0

您可以将 CanAddNew 绑定到模型中的属性,然后根据您的条件将其设置为 true/false:

   <DataGrid CanUserAddRows="{Binding Path=YourBooleanProperty}"/>
于 2013-02-19T14:27:57.653 回答
0

我现在可以做到这一点- 我根据条件将一个空项目添加到我的集合中。然后,如果用户编辑集合的空项,我会以编程方式再添加一个空行。

于 2013-02-20T14:46:04.630 回答