问题标签 [observablecollection]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
wpf - 为什么 ObservableCollection 不会在项目更改时更新?
我注意到,ObservableCollection
在 WPF 中,仅通过添加或删除列表中的项目而不是通过编辑它来反映 GUI 中的更改。
这意味着我必须改写我的自定义类 MyObservableCollection。这种行为的原因是什么?
谢谢
wcf - 通过服务在数据库中插入实体时出现问题
我有一个 Silverlight 应用程序,并且正在使用 WCF 服务来访问我的数据库信息。为此,我正在使用 EntityFramework。我有一个类 Items(映射到我的 DB 表 Items),它有一个 ObservableCollection 关键字(映射到我的 DB 表关键字的类)对象。
从界面中,我创建了一个包含所有属性集的 Items 对象,包括关键字列表(如果关键字已经存在,我添加由 EntityFramework 检索的对象,如果关键字不存在,我从界面创建一个新的关键字对象并添加它到我的项目的 ObservableCollection)。当我将 Item 对象传递给服务并尝试将其添加到 DB 时,我收到以下错误:ObjectStateManager 中已存在具有相同键的对象。ObjectStateManager 无法跟踪具有相同键的多个对象。
我怎么解决这个问题?
c# - 无法使用 fieldinfo 访问对象字段
我有一个方法可以接收对象的可观察集合(从 Web 服务返回)并根据它们的属性分析它们。
这是该方法的代码片段
私人双重分析(ObservableCollection mobjColl){
我的问题是 fieldinfo fi 始终为空。我可以使用对象名称访问对象的每个字段(在 foreach 中),但是永远不会填充 fieldinfo 对象。我什至尝试使用 GetFields 方法,但它不返回数组......
PS:对象字段是公开的。在 getfield 中使用 bindingflags 也没有帮助。
wpf - WPF ListBox 未绑定到 INotifyCollectionChanged 或 INotifyPropertyChanged 事件
我有以下测试代码:
和 XAML
外部列表框在加载时填充。当扩展器展开时,我然后设置ItemsSource
内部列表框的属性(我这样做而不是使用绑定的原因是这个操作很慢,我只希望它在用户选择查看项目时发生)。内部列表框呈现良好,但它实际上并没有订阅CollectionChanged
集合上的事件。我已经尝试过使用ICollection
而不是IEnumerable
添加和INotifyPropertyChanged
替换。我实际上可以让它工作的唯一方法是破坏我的类并继承自. 我试图扮演自己的角色而不是使用的理由INotifyCollectionChanged
INotifyPropertyChanged
SomeCollection
ObservableCollection<SomeItem>
INotifyCollectionChanged
ObservableCollection
是因为我在真实代码中包装了一个 COM 集合。该集合将通知添加/更改/删除,我正在尝试将这些转换INotify
为 WPF 的事件。
希望这足够清楚(为时已晚)。
c# - 将 Observable 对象集合保存到 XML 文件的最简单方法是什么?
我有一个包含客户对象的 Observable 集合:
将其转储到 XML 文件以便稍后读取的最简单方法是什么?