《Blazor》的teleerik UI免费下载30天试用版

抽屉-刷新数据

使用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 
@code {TelerikDrawer DrawerRef {get;设置;} DrawerItem被选中的item {get;设置;}无效AddItem(){数据。添加(new DrawerItem { Text = "Info", Icon = FontIcon.InfoCircle }); Data = new List(Data); } void RemoveItem() { if (Data.Count > 0) { Data.RemoveAt(Data.IndexOf(Data.Last())); Data = new List(Data); } } void ChangeData() { Data = new List { new DrawerItem { Text = "Overview", Icon = FontIcon.InfoCircle }, new DrawerItem { Text = "Events", Icon = FontIcon.Star }, }; } List Data { get; set; } = new List { new DrawerItem { Text = "Counter", Icon = FontIcon.Plus }, new DrawerItem { Text = "FetchData", Icon = FontIcon.GridLayout }, }; public class DrawerItem { public string Text { get; set; } public FontIcon? Icon { get; set; } } }

另请参阅

在本文中
Baidu
map