更新数据源后,Telerik的RadListView不会绘制项目

时间:2016-01-14 19:39:13

标签: c# .net vb.net winforms telerik

我正在使用 RadListView 中的 Telerik UI for WindowsForms 控件。

我一步一步做的是:

  1. 将DataSource设置为控件。

  2. 手动滚动垂直滚动条向下

  3. 计时器滴答后,数据源会在运行时续订。

  4. 此时,滚动并且数据源已更改后,滚动条保持在相同位置(如我所料),但列表视图未正确更新布局,任何项目都在控件中绘制。

    我找到解决此问题的唯一方法是手动向上滚动(仅向上)。

    我尝试使用EnsureItemVisiblePerformLayoutInvalidateScrollTo方法,我也切换了Visible属性的状态,但是修复了布局问题。

    我如何解决它?。

2 个答案:

答案 0 :(得分:2)

由于您的数据源不支持通知,因此ListView未更新。为了实现这一目标,您的数据源应该实现IBIndingList,并且您的对象应该实现INotifyPropertyChanged。例如,您可以使用BindingList而不是IEnumerable。 this article中提供了一个示例 - 即使文章使用RadGridView,在数据源方面,方法也是相同的。

然后你可以查看RadListView本身的DataBinding article

答案 1 :(得分:1)

您是否尝试过调用Application.DoEvents()?