数据加载缓慢? [英] Data loads slowly?

查看:169
本文介绍了数据加载缓慢?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我一直在为列表使用DGV。 我通常手动使用它们,即我没有在属性窗口中定义属性,但是在代码中,如下所示。


它来自的表单类用于显示数据来自众多表中的一个。 但是,我发现我使用这个DGV(使用任何表)的唯一方法是双击事件来选择记录,然后在应用程序中的其他地方用
做一些事情。


然而,我注意到,即使只有20到30条记录,DGV在被叫时似乎加载速度很慢。 发生的情况是,当执行加载事件并且屏幕上的表格出现时,DGV不会立即显示,而是慢慢地在屏幕上从一侧到另一侧显示
。 这个属性让我相信它是有问题的数据。


我很可能完全误解了正在发生的事情,所以我很有兴趣知道是不是这样的话。以及DGV是否适合我在这里所做的工作。


'DGV加载
随着frmElementList.dgvElementList
.ReadOnly = False
.AllowUserToAddRows = False
.AllowUserToDeleteRows = False
.AllowUserToResizeColumns = False
.AllowUserToResizeRows = False
'Columns
.Size =新尺寸(555,375)
。位置=新点(8,8)
'单元格
.AutoSizeRowsMo​​de = DataGridViewAutoSizeRowsMo​​de.AllCells
.DataSource = frmElementList._MasterBase_1_0DataSet
.DataMember =" t blChangeMaster"
.Columns(0).Visible = True
.Columns(0).HeaderText =" Change" &安培; vbNewLine& " ID"
.Columns(0).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
.Columns(0).DefaultCellStyle.WrapMode = DataGridViewTriState.True
.Columns(0).Width = 100
.Columns(0).DisplayIndex = 0
.Columns(1).Visible = True
.Columns(1).HeaderText =" Change" &安培; vbNewLine& " ID"
.Columns(1).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
.Columns(1).DefaultCellStyle.WrapMode = DataGridViewTriState.True
.Columns(1).Width = 100
.Columns(1).DisplayIndex = 1
.Columns(2).Visible = True
.Columns(2).HeaderText =" Title / Name"
.Columns(2).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleLeft
.Columns(2).DefaultCellStyle.WrapMode = DataGridViewTriState.True
.Columns(2).Width = 275
.Columns(2).DisplayIndex = 2
.Columns(3).Visible = True
.Columns(3).HeaderText =" Revision"
.Columns(3).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
.Columns(3).DefaultCellStyle.WrapMode = DataGridViewTriState.True
.Columns(3).Width = 75
.Columns(3).DisplayIndex = 3
.Columns(4).Visible = False
.Columns(5).Visible = False
.Columns(6).Visible = False
.Columns(7).Visible = False
.Columns(8).Visible = False
.Columns(9).Visible = False
.Columns(10).Visible =假
.Columns(11).Visible = False
.Columns(12).Visible = False
.Columns(13).Visible = False
.Columns(14)。 Visible = False
.Columns(15).Visible = False
.Columns(16).Visible = False
.Columns(17).Visible = False
.Columns(18).Visible = False
.Columns(19).Visible = False
.Columns(20).Visible = False
.Columns(21).Visible = False
.Columns(22).Visible = False
结束




gwboolean

解决方案

也许您需要使用开始/结束更新以某种方式暂停更新,以便 直到您的代码运行:


 
DataGridColumnStyle
BeginUpdate
方法
()



I have been using DGVs quite a bit for lists.  I generally use them manually i.e. I do not define the properties in the properties window, but in the code, as seen below.

The form class this comes from is to be used to present data from one of a number of tables.  However, I have found that the only thing I do with this DGV (with any table used) is a double-click event to select a record then do something with it elsewhere in the application.

What I have noticed, however, is that even with only 20-30 records the DGV appears to be loading slow when called.  What occurs is that when the load event is executed and the form comes up on the screen the DGV does not instantly display, but slowly displays from side to side on the screen.  This attribute is what leads me to believe that it is the data that is at issue.

Most likely I have completely misunderstood what is occurring, so am very interested in knowing if this is the case and whether a DGV is the appropriate tool for what I am doing here.

            'DGV Load
            With frmElementList.dgvElementList
                .ReadOnly = False
                .AllowUserToAddRows = False
                .AllowUserToDeleteRows = False
                .AllowUserToResizeColumns = False
                .AllowUserToResizeRows = False
                'Columns
                .Size = New Size(555, 375)
                .Location = New Point(8, 8)
                'Cells
                .AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells
                .DataSource = frmElementList._MasterBase_1_0DataSet
                .DataMember = "tblChangeMaster"
                .Columns(0).Visible = True
                .Columns(0).HeaderText = "Change" & vbNewLine & "ID"
                .Columns(0).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
                .Columns(0).DefaultCellStyle.WrapMode = DataGridViewTriState.True
                .Columns(0).Width = 100
                .Columns(0).DisplayIndex = 0
                .Columns(1).Visible = True
                .Columns(1).HeaderText = "Change" & vbNewLine & "ID"
                .Columns(1).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
                .Columns(1).DefaultCellStyle.WrapMode = DataGridViewTriState.True
                .Columns(1).Width = 100
                .Columns(1).DisplayIndex = 1
                .Columns(2).Visible = True
                .Columns(2).HeaderText = "Title/Name"
                .Columns(2).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleLeft
                .Columns(2).DefaultCellStyle.WrapMode = DataGridViewTriState.True
                .Columns(2).Width = 275
                .Columns(2).DisplayIndex = 2
                .Columns(3).Visible = True
                .Columns(3).HeaderText = "Revision"
                .Columns(3).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
                .Columns(3).DefaultCellStyle.WrapMode = DataGridViewTriState.True
                .Columns(3).Width = 75
                .Columns(3).DisplayIndex = 3
                .Columns(4).Visible = False
                .Columns(5).Visible = False
                .Columns(6).Visible = False
                .Columns(7).Visible = False
                .Columns(8).Visible = False
                .Columns(9).Visible = False
                .Columns(10).Visible = False
                .Columns(11).Visible = False
                .Columns(12).Visible = False
                .Columns(13).Visible = False
                .Columns(14).Visible = False
                .Columns(15).Visible = False
                .Columns(16).Visible = False
                .Columns(17).Visible = False
                .Columns(18).Visible = False
                .Columns(19).Visible = False
                .Columns(20).Visible = False
                .Columns(21).Visible = False
                .Columns(22).Visible = False
            End With


gwboolean

解决方案

Maybe you need to use the begin/end update to suspend updating in some way so until your code has run:

  DataGridColumnStyle.BeginUpdate Method ()


这篇关于数据加载缓慢?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆