线程读取datagridview内容

问题描述

我在主窗体里有一个datagridview,里面完全空白。我在线程里读取SQL数据放在datagridview里面,然后想在这个线程里面对datagridview进行编辑。但是不知道如何读取内容,出错提示是“索引超出范围。必须为非负值并小于集合大小。”我读取的是第一列数据,我在另外一个线程里面是可以读取的。但在取数据线程读取就失败。应该是委托的问题。我用委托操作datagridview添加列是没问题的。但是不知道如何读取上面的数据。方法一PublicDelegateSubDelegate_get_Market(ByValtextAsStringPrivateSubGet_market(ByValvalue1AsString)DimabcAsString=form1.DataGridView1.Item(value1,0).ValueEndSubmyclass1.Invoke(NewDelegate_get_Market(AddressOfGet_market),"market")

这个方法没反应。方法二DimabcAsString=form1.DataGridView1.Item("Market",0).Value

解决方案

解决方案二:
是不是要当前线程结束了datagridview才真正有数据呢?所以从同一个线程就不能读取数据,线程结束后就没问题?
解决方案三:
该回复于2014-01-21 06:08:13被版主删除
解决方案四:
应该datagridview里没有数据,没有数据就会有这个提示
解决方案五:
http://www.vbforums.com/showthread.php?498387-Accessing-Controls-from-Worker-Threads*****************************************************************************签名档:http://feiyun0112.cnblogs.com/
解决方案六:
引用4楼feiyun0112的回复:

http://www.vbforums.com/showthread.php?498387-Accessing-Controls-from-Worker-Threads*****************************************************************************签名档:http://feiyun0112.cnblogs.com/

不是很明白?能解析下吗?
解决方案七:
线程操作的关键代码,先将数据保存到全局的DataTable,然后一条条往dataGridView1添加#regionbackgroundWorker将XML导入GridViewprivatevoidbackgroundWorker1_DoWork(objectsender,DoWorkEventArgse){object[]argumet=(object[])e.Argument;int_rowIndex=int.Parse(argumet[0].ToString());backgroundWorker1.ReportProgress(_rowIndex);}privatevoidbackgroundWorker1_ProgressChanged(objectsender,ProgressChangedEventArgse){dataGridView1.Rows.Add(newobject[]{Properties.Resources.PROCESS_READY,e.ProgressPercentage+1,_dt_am.Rows[e.ProgressPercentage]["Code"],_form_code,""});}privatevoidbackgroundWorker1_RunWorkerCompleted(objectsender,RunWorkerCompletedEventArgse){_index=_index+1;if(_index<_dt_am.Rows.Count){if(_isPlay&&!_isStop){_form_code=_form_code.Substring(0,10)+(int.Parse(_form_code.Substring(10,3))+1).ToString("D3");backgroundWorker1.RunWorkerAsync(newobject[]{_index});}}else{bnt_star.Enabled=true;bnt_pause.Enabled=false;bnt_stop.Enabled=false;bnt_update.Enabled=true;mTB_Code.Enabled=true;}if(_isStop){_index=0;_updateIndex=0;}//如果强制关闭if(_isClose){this.Close();}}#endregion

时间: 2024-09-20 05:48:35

线程读取datagridview内容的相关文章

c#-C#读取数据库内容显示到文本框中

问题描述 C#读取数据库内容显示到文本框中 如果我不按照当前用户名("admin")和id(1)查询,要怎么把一条数据查出来 显示到文本框呢,就是把条件删除 解决方案 [新手]C# winform 用dataGridView显示数据库内容

C#读取txt内容,并将读取的txt里面的内容写入Excel中?

问题描述 txt内容如下:序号姓名籍贯名次语文英语数学11小明江苏18692952小红四川29088923小刚浙江38586924小李山东4828489 解决方案 解决方案二:然后呢..你是不会读取还是不会分割?还是不会写到xls里啊?还是所有都不会....最起码的你应该丢出来点代码吧.....解决方案三:读文件http://msdn.microsoft.com/zh-cn/library/system.io.streamreader(VS.80).aspxexcel操作http://www.c

ava cript-JavaScript读取指定内容行时遇到问题

问题描述 JavaScript读取指定内容行时遇到问题 JavaScript读取指定内容行时遇到问题:我从文本中复制某一行字符串到js中,然后用一下代码进行读取: while ((s = ts.ReadLine()) != "object block {YZB-PBGA}") { s = ts.ReadLine(); } alert(s); 可是有时候就会报错,说输入超出文件尾,不知道这是什么情况,应该如何处理? 解决方案 你要判断是否读到尾,你这个就没有判断是否到底文件尾 while

Ajax+Asp源代码]读取数据库内容的表格(没有用框架)

ajax|数据|数据库|源代码 功能: 读取数据库内容的表格.读取数据方式为ajax,分页也是.代码写得不好.呵呵.供一些学习ajax的朋友参考参考.如有不妥请大家跟贴纠正.我会根据大家的提议不断修正代码. 目前还有一个小问题,如果有朋友有兴趣帮我解决一下在下不胜感激 你翻到最后一页的时候如果只有一行会出现空白和undefined.这个问题我试了很多方法一直没有很妥当的解决. 注:下面一些地方出现笑脸表情的是 大写的d 其实很多地方都可以根据asp文件中输出的字符来控制.目前还没有往那方面完善.

Java小例子:按指定的编码读取文本文件内容

InputStreamReader 的构造函数提供了一个参数,用于指定通过什么编码将 读取到的字节流转换成字符.下面是一个例子: 01./** 02. * 读取指定的文本文件,并返回内容 03. * 04. * @param path 文件路径 05. * @param charset 文件编码 06. * 07. * @return 文件内容 08. * 09. * @throws IOException 如果文件不存在.打开失败或读取失败 10. */ 11.private static S

Java读取文件内容的小例子

Java 提供 BufferedReader 类用来从流中读取字符串.FileReader 类用来读取文件.我们用这两个类来读取文件中的字符串. 下面是一个例子: import java.io.BufferedReader;import java.io.FileReader;import java.io.IOException;public class ReadFile{ public static void main(String[] args){ String path="c:/1.txt&

ajax读取数据库内容实现二级联动下拉选择菜单示例

本文为大家介绍下使用ajax技术读取数据库内容并生成二级联动下拉选择菜单,具体实现如下,感兴趣的朋友可以参考下,希望对大家有所帮助   复制代码 代码如下: <PRE class=javascript name="code"></PRE><PRE class=javascript name="code">---------------------这是ajax(javascript)代码 ----------------------

php读取文件内容到数组的方法

这篇文章主要介绍了php读取文件内容到数组的方法,涉及php中file.rtrim等函数对文件及字符串的操作技巧,具有一定参考借鉴价值,需要的朋友可以参考下     本文实例讲述了php读取文件内容到数组的方法.分享给大家供大家参考.具体分析如下: php中可以通过file()函数将文件读取到数组中,数组中的元素即为文件的每行,file()函数通过"n"按行分割文件保存到数组,所以数组每个元素都是以"n"结尾,我们可以通过 rtrim()函数将其去除 ? 1 2 3

php读取文件内容的三种方法

 这篇文章主要介绍了php读取文件内容的三种方法,需要的朋友可以参考下 php读取文件内容的三种方法:    //**************第一种读取方式*****************************  代码如下: header("content-type:text/html;charset=utf-8");  //文件路径  $file_path="text.txt";  //判断是否有这个文件  if(file_exists($file_path)