读书人

listView的动态刷新有关问题(还有一个

发布时间: 2012-04-21 14:34:44 作者: rapoo

listView的动态刷新问题(还有一个异步问题,请大神~~)
我有一个listView,是用来显示监视列表的,它的数据在一个list_show函数中通过从一个List<user_info>中读取并实现显示(我要动态的刷新已经存在的数据的变化以及新增的数据)。而List<user_info>由data_report函数来实现更新。
暂时,我是在data_report函数中回报完数据后再加上list_show(user_info)(这里的异步实现也想请教一下)主动呼叫list_show函数来重新刷新一次listview。
问题是:1.由于data_report函数是高频率触发的,我的listview的显示方式是不是有问题,可不可以绑定数据源这样会不会更高效?如何做?
我的代码:

C# code
...//...foreach(user_info info in list_info) {  ...//一些其实它的数据过滤  ...  string count = (listView1.Items.Count + 1).ToString();  ListViewItem item = new ListViewItem(count);  item.SubItems.Add(user_info.name);  item.SubItems.Add(user_info.age);  item.SubItems.Add(user_info.status);  listView1.Items.AddRange(new ListViewItem[] { item }); }

2.由于我的data_report函数被封装在一个DLL里,那么异步的呼叫form中的list_show(user_info)应该怎么样实现?
我现在的方法是在form里先写一个list_delege的函数,然后由这个函数异步调用list_show(user_info),
而在data_report里触发list_delege(user_info).我的初衷是直接在DLL里异步的完成list_show函数.现在多了中间的
一步,我很不喜欢.

[解决办法]
INotifyCollectionChanged+INotifyChanged under WPF

读书人网 >C#

热点推荐