读书人

WinForm中的一个循环速度好慢解决思路

发布时间: 2012-01-05 22:36:54 作者: rapoo

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,机器配置等。

读书人网 >C#

热点推荐