gpt4 book ai didi

WPF:IEditableCollectionView 和 CanAddNew 和空集合

转载 作者:行者123 更新时间:2023-12-04 18:33:51 24 4
gpt4 key购买 nike

我们在使用 wpf 数据网格和 IEditableCollectionView 时遇到了一些问题(尽管这个问题适用于使用 IEditableCollectionView 和 ItemsControl)当您的集合中没有任何项目时,IEditableCollectionView 无法确定应该插入哪些项目,因此它设置为 CanAddNew=false我们找到了解决方案here (深埋在评论中)就像这样:

如果你像这样从 ObservableCollection 派生

public class PersonsList : ObservableCollection<Person> { }

您会发现如果初始集合为空,则 View 上不会显示 NewItemPlaceHolder。这是因为 PersonsList 在设计时无法解析类型 T。对我有用的解决方法是将类型 T 作为参数传递给这样的类
PersonsList<T> : ObservableCollection<T> where T : Person { }

即使集合为空,这种方法也会放置 NewItemPlaceHolder。

我想知道我是否可以在我的集合上实现一个接口(interface),通知 IEditableCollectionView 如果我收到 AddNew 请求要创建哪种类型。

最佳答案

尝试实现 IEditableObjectT看看问题是否消失。 Vincent Sibal说这是必要的。但他也声称PersonsList<T>也需要,但你已经想通了。希望,IEditableObject就足够了,您将能够使用非泛型类。

关于WPF:IEditableCollectionView 和 CanAddNew 和空集合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2680759/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com