Telerik的RadListView在更新数据源后不会绘制项目
本文关键字:绘制 项目 数据源 RadListView 更新 Telerik | 更新日期: 2023-09-27 18:30:20
我正在使用 Telerik UI for WindowsForms 的RadListView 控件。
我正在逐步做的是:
-
将数据源设置为控件。
-
手动向下滚动垂直滚动条
-
计时器计时后,数据源将在运行时续订。
并且数据源已更改后,滚动条将保持在同一位置(如我预期的那样),但列表视图未正确更新布局,任何项都在控件中绘制。
我发现解决此问题的唯一方法是手动向上滚动(仅向上滚动)。
我尝试使用EnsureItemVisible
、PerformLayout
、Invalidate
和ScrollTo
方法,我还切换了Visible
属性的状态,但任何事情都解决了布局问题。
我该如何解决它?
列表视图未更新,因为数据源不支持通知。为了做到这一点,你的数据源应该实现IBIndingList,你的对象应该实现INotifyPropertyChanged。例如,您可以使用 BindingList 而不是 IEnumerable。本文中提供了这方面的一个示例 - 即使本文使用 RadGridView,在数据源端,方法也是相同的。
然后,您可以查看RadListView本身的DataBinding文章。
您是否尝试调用 Application.DoEvents()?