DataGrid 异步加载的问题
我需要给datagrid绑定10多万数据,直接用ItemsSource绑定的时候会卡很长时间,如何实现异步加载,我写的多线程绑定没有效果,麻烦给看一下
ObservableCollection<NameInfo> nameList = new ObservableCollection<NameInfo>();
dgvDate.ItemsSource = nameList;
thread_create = new Thread(() =>
{
CreateName();
});
thread_create.Start();
public void CreateName()
{
List<NameInfo> list = NameClass.CreateNormalName();
Dispatcher.BeginInvoke(DispatcherPriority.Normal, new updateDateGridDelegate(() =>
{
progress.Maximum = list.Count;
}));
for (int i = 0; i < list.Count-1; i++)
{
Dispatcher.BeginInvoke(DispatcherPriority.Normal, new updateDateGridDelegate(() =>
{
lock (nameList) //加载出来的数据会有很多重复的。貌似需要lock但是没效果
{
//dgvDate.Items.Add(list[i]);
nameList.Add(list[i]);
progress.Value = i;
}
}));
Thread.Sleep(1);//如果不休眠会卡主
}
}
...全文
相关推荐
WPF异步加载DataGrid Version 0.2
这个版本修复了前一版本中出现的问题,现在允许用户通过双击进行编辑,而不是在DataGrid内部直接编辑。首先,我们要理解WPF DataGrid的基本概念。
利用MVVM框架DataGrid分页
总之,“利用MVVM框架DataGrid分页”是一个涵盖数据绑定、命令、ICollectionView、异步加载和用户体验优化等多个方面的实践。
WPF DataGrid 中显示图片的小例子
**性能优化** 当处理大量图片时,需要注意性能问题。可以使用缓存策略,如内存缓存或异步加载图片,以避免一次性加载所有图片导致的性能瓶颈。6.
jQuery EasyUI编辑DataGrid用combobox实现多级联动
- 在实际项目中,可能需要考虑异步加载数据和处理网络延迟问题,确保用户体验流畅。
easyui datagrid 表格中操作栏 按钮图标不显示的解决方法
当数据是通过Ajax异步加载或者动态创建的,EasyUI可能无法识别这些新的元素并为其应用样式,因此按钮的图标可能不会显示。解决这个问题的关键在于调用$.parser.parse()函数。


