关于DataGridView虚拟表(VirtualMode)

.Net技术 码拜 9年前 (2016-05-18) 990次浏览
由于项目需要显示大量数据,所以只能用虚拟表,本人本人绘制了Cell实现了折叠功能,但是在收起折叠时发现速度很慢,做了个测试,下面是全部代码

	public partial class Form2:Form
	{
		public Form2()
		{
			InitializeComponent();
			this.dataGridView1.VirtualMode=true;
		}
		private void button1_Click(object sender,EventArgs e)
		{
			if(this.dataGridView1.RowCount<100)
			{
				this.dataGridView1.RowCount=10000;
			}
			else
			{
				this.dataGridView1.RowCount=10;//这一句耗时4秒钟
			}
		}
	}

当行数从多变少时会卡几秒钟,什么原因引起的?怎么破?

解决方案

50

应该是Render导致的,原因是你行数变更后需要重新渲染,这方面本人不是专家,不发表议论

50

可以试试用线程托管来操作

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明关于DataGridView虚拟表(VirtualMode)
喜欢 (0)
[1034331897@qq.com]
分享 (0)