抽屉-刷新数据
使用ObservableCollection最常见的原因是让组件(如网格、树视图、树列表、下拉列表)在你改变集合时发生变化或做出反应。
当你想这样刷新组件数据源时,有两个重要的框架行为需要注意——当ObservableCollection实例触发事件时,以及当组件不是一个可观察集合时,如何刷新组件的数据。
在本文中:
可观测的数据
抽屉将在未来的版本中获得此功能。当前可以通过创建新的集合引用.
数据绑定组件可以从实时数据中获益——当数据源集合发生更改时,组件应该进行更新以反映该更改。Blazor套件的Telerik UI中的大多数数据绑定组件都实现了这样的功能。
当数据
的集合,该集合实现INotifyCollectionChanged
接口(例如ObservableCollection
), Telerik组件订阅其CollectionChanged
要更新的事件。这意味着添加项、删除项或清除集合更新组件(其)阀门()
,.Remove ()
和.Clear ()
方法)。
Observable集合会触发CollectionChanged
事件发生时,添加
,删除
和清晰的
方法被调用。当您更改其中一个元素的字段值时,它们不会触发它。
新馆藏参考
在Blazor中,框架将触发OnParametersSet
事件(这是子组件如何对外部更改做出反应),只有当它能够检测到通过相应参数(如数据
查看Telerik组件的数据源)。这种检测的工作原理如下:
对于基本类型(如数字、字符串),当它们的值发生变化时就会发生这种情况。
对于复杂类型(如数据集合,如
列表
,或任何IEnumerable
(以及特定于应用程序的模型/对象),当对象引用发生更改时就会发生这种情况。因此,您通常需要创建
新
视图模型字段的引用(例如TreeViewData = new List< mytreeviewem >(theUpdatedDataCollection);
),当你想要更新组件时。
创建新的集合引用以刷新Drawer数据。
*添加/删除一个项目或更改数据收集,以查看抽屉如何对该更改作出反应。*@ 添加项目 删除项目 更改数据 选中的项目:@SelectedItem。Text