Datagridview在加载数据方面获得更多

时间:2011-03-27 03:13:03

标签: .net winforms visual-studio-2010 c#-4.0

Am using datagrid in my windows application, its getting more time to load datas(13 Seconds for 65000 items)

正在为超级市场做Billing Appication,我直接从单元格中搜索,在按键上列出另一个网格中的项目。我知道keydown编辑事件不在Microsoft datadridview中,因此用于在 _EditingControlShowing 中调用键。


 private void gvSalesItem_EditingControlShowing(object sender,DataGridViewEditingControlShowingEventArgs e)
        {
            e.Control.KeyDown -= new KeyEventHandler(Control_KeyDown);
        }

 private void Control_KeyDown(object sender, KeyEventArgs e)
        {

            if (e.KeyCode == Keys.F5)
            {

                LoadItems();//here is showing list of items in grid by data source
            }
        }


我认为 flexgrid 可以立即修复加载数据,如果不是,请提供解决方案。

提前致谢

Datagridview有更多时间加载数据(65000项目为13秒)

1 个答案:

答案 0 :(得分:0)

如果您使用DataSet SqlDataSource DataSourceMode属性,或者未设置属性,则默认值为DataSet。这会将查询返回的所有记录加载到DataSet对象中,从而自动进行分页,更新记录等...

如果您对DataReader使用DataSourceMode选项或手动绑定到SqlDataReader,则可以获得更好的性能,您可以在加载数据时获得更好的效果。这样做的缺点是你必须编写自己的分页/排序逻辑,并且可能必须改变你的查询,只给你一次显示的记录,而不是从数据库中选择所有记录。

这可能不适合您,但它会提高加载数据的性能。