WinForm中的一个循环速度好慢
我绑定的这个数据源.只有1502行记录,表里的数据导出成XML文档有2M
我现在要做的是右键菜单,实现全选的功能.
int tmpcount = dgv_Plan.Rows.Count;//tmpcount=1502
for (int i = 0; i < tmpcount; i++)
{
dgv_Plan.Rows[i][ "isselect "] = true;
}
就这样的一个循环用了近二分钟.为什么..
有什么办法能解决这速度问题吗?
注意是:WinForm应用程序 不是ASP.NET的
------解决方案--------------------没写过winform只好帮你顶了.
------解决方案--------------------应该不会呀
------解决方案--------------------是不是你当时的环境问题,重新启动系统运行,试试。
------解决方案--------------------是不是用DataGridView,它有SelectAll()方法吧
------解决方案--------------------用FOREACH
或用WHILE
只能试试
DataRow dr = new DataRow() ;
foreach dr in dgv_Plan.Rows
{
dr[ "isselect "] = true;
}
------解决方案--------------------两分钟? 从这个循环的代码看根本不可能,
个人觉得可能是其它地方出现问题吧
------解决方案--------------------怎么可以能我们做的都不慢
------解决方案--------------------你是不是在dgv_Plan中有change的事件?
可以先将事件移除处理完后再加载
------解决方案--------------------可能有很多
1,字段多,占据大量内存
2,应用中可能有别的线程在跑
3,机器配置等。