`

DataGridView刷新数据的问题

    博客分类:
  • C#
UI 
阅读更多

1、操作:UI线程修改数据后重新绑定dgv,一个后台线程定时刷新dgv(因为多个程序修改该表)

2、异常:DataGridView绑定Ilist对象,出现IndexOutOfRangeException错误的解决方法

3、解决办法:把读取数据和绑定数据源作为一个原子操作

 

        private delegate void SetDgvDelegate();
        /// <summary>
        /// 跨线程访问dgv
        /// </summary>
        private void SetDgv()
        {
            if (dgv.InvokeRequired)
            {
                SetDgvDelegate handler = SetDgv;
                dgv.Invoke(handler);
            }
            else
            {
                lock (dgv)
                {
                    dgv.DataSource = emptyCollection;
                    dgv.DataSource = common.GetDetail(tableNum, out tableName);
                    dgv.ClearSelection();//清空选择行 
                }
            }
        }

 

 

分享到:
评论
9 楼 devilhand 2012-03-31  
 
8 楼 devilhand 2012-03-31  
 
7 楼 devilhand 2012-03-31  
  
6 楼 devilhand 2012-03-31  
  
5 楼 devilhand 2012-03-31  
 
4 楼 devilhand 2012-03-31  
 
3 楼 devilhand 2012-03-31  
 
2 楼 devilhand 2011-07-01  
1 楼 devilhand 2011-07-01  

相关推荐

    C# 数据库增删查改及DataGridView刷新数据

    数据库增删查改及DataGridView刷新数据

    dataGridView数据更新后,显示在原来的位置.txt

    winfrom中 dataGridView 重新刷新数据后 ,数据的显示的位置一般情况下会发生变化,可以通过代码的方法,在重新刷新数据后可以使数据显示的位置保持不动。源代码提供使用,使用过程中有问题时可以留言

    c#datagrid操作,解决datagridView加载慢.docx

    发现了datagridview直接绑定DataSource加载数据比较慢的问题,从网上找了很多资料,没有有效的解决方案,

    使用线程自动刷新数据的例子

    使用线程(Thread)每隔1秒都会随机生成DataGridView的数据源,并通过信号对线程进行控制。

    DataGridView数据编辑模板

    RefreshData 统一的刷新数据表过程,具体功能中需要重载该方法,并调用具体的TableAdapter.Fill(DataTable),以查询数据 DataValid 统一的数据验证方法,在保存数据前被调用。具体功能中可重载该方法添加自定义的...

    DataGridView固定滚动条

    扩展一个DataGridViewExt类,实现重新绑定数据实现刷新DataGridView内容时滚动条不跳到DataGridView顶端的效果

    C#ACCESS创建修改删除,DataGridView绑定数据下的删除添加修改源码

    C# ACCESS数据库添加; 表名称修改; 表添加; 表删除; 列添加修改删除; DataGridView绑定数据并禁用添加数据下的动态删除添加修改 特别是数据量大时快速刷新; 源码

    C# DataGridView使用

    DataGridView简单使用。添加行表头。数据源绑定,刷新数据。

    winform datagridview多线程出现红叉解决方案

    winform datagridview多线程出现红叉解决方案,只要将运行的代码由创建线程调用就OK了

    vb.net中listview双缓冲解决数据刷新时假死和闪频

    关于这个资源,c#的代码很多,但是关于vb.net的却很少,所以搞一个给大家分享。

    .net datagridview 实例

    .net datagridview 实例 能动态加载显示数据 包括添加、删除、修改保存等数据操作。

    免费DataGridView打印及.NET轻松打印控件5.0版

    ChartGraph图表生成组件(电脑需安装Excel),用于将DataGridView表格(窗口程序)与GridView(网页程序)中的数据生成图表图片,然后再使用VB2008Print组件提供的图片打印功能(DrawImage)即可实现类似Excel的简单...

    功能强大的免费DataGridView打印控件

    文字图像都可以打印,而且是完全根据表格当前的显示顺序进行打印的,如果您在使用时调整了列的顺序,刷新打印后就会按调整后的列显示顺序进行打印(这是网上很多DataGridView打印控件没有实现的),基本上做到了所见...

    C#中序列化实现深拷贝,实现DataGridView初始化刷新的方法

    winfrom中DataGridView在的单元格在编辑时候会修改它的数据源的,如果我们遇到这样一种情景,刷新数据源到原始状态,这个时候要么数据源的重新获取绑定,要么通过拷贝一份原始档的数据再绑定处理,这里介绍拷贝方式...

    BIndDataDemo.zip

    DataGridView数据绑定 刷新,多行数据

    DBClass.rar_DBClass_datagridview_sql server_webservice

    1.继承DBClass类,类加DBClassAttribute特性,属性加DBColumnAttribute特性,可自动在连接的数据库上创建表结构(目前...2.继承DBForm窗体类,继承IDataGridView,可简单实现在DataGridView控件中添加、删除、刷新数据。

    DataGridView打印控件

    3、对多表头显示组件MulHeaderDataGridView进行了完善,解决了复杂表头画线位置不精确及更改表头ColHeaderTreeView属性后刷新不及时的问题。 4、增加了打印预处理过程的取消功能。对DGVPrint组件和WebGVPrint组件,...

    C#.Net增删改查,BOY管理系统

    个人做的C#项目,登录,注册,datagridView显示所有数据,窗体传值修改数据,删除,新增,退出,刷新,模糊查询,精确查询

    随机点名系统

    本程序每步都有详尽的说明,从数据库读取数据到窗体通过...利用定时器每60ms刷新数据,停止时,自动切换到点名抽中的那一行。并且可以直接在数据行更改保存刷新。数据库的设计请自行参考datagridview的编辑列的属性名。

    C# Access数据库DataCommand和DataAdapter等区分.doc

    1.和查询有关的,如获取表数据(包括所谓的“刷新”和“连接数据库”)、按条件查询,都是用的 OleDbDataAdapter。例如对DataGridView中数据更改的保存会用到DataAdapter中的更新。 2.凡涉及修改表数据的,如增、删...

Global site tag (gtag.js) - Google Analytics