定位代码,有点缺陷,就是到了最后一条记录的时候,再点击下一条就会报错,回不了开始的记录

问题描述

//查询定位privatevoidbutton7_Click(objectsender,EventArgse){{introw=dataGridView1.Rows.Count;//得到总行数intcell=dataGridView1.Rows[1].Cells.Count;//得到总列数stringstrTxt=textBox4.Text;//得到输入的字符串,并付值给变量Regexr=newRegex(strTxt);//定义一个Regex对象实例for(inti=0;i<row;i++)//得到总行数并在之内循环{for(intj=0;j<cell;j++)//得到总列数并在之内循环{Matchm=r.Match(dataGridView1.Rows[i].Cells[j].Value.ToString());//在字符串中模糊匹配if(m.Success){//对比TexBox中的值是否与dataGridView中的值相同(上面这句)dataGridView1.CurrentCell=dataGridView1[j,i];//定位到相同的单元格if(MessageBox.Show("是否需要继续查找?","",MessageBoxButtons.OKCancel)==DialogResult.Cancel){//如果选择了取消就会返回,如果选择了确定,就会继续查找匹配的.return;//返回}}}}}}

解决方案

解决方案二:
dataGridView1.CurrentCell=dataGridView1[j,i];i,j反了
解决方案三:
引用1楼的回复:

dataGridView1.CurrentCell=dataGridView1[j,i];i,j反了

看错了,和这无关intcell=dataGridView1.Rows[1].Cells.Count;//得到总列数你的记录会不会是不够2行在这里报错?
解决方案四:
不是啊,我的记录很多的,就是一行一行这么定位下去,知道符合条件的最后一行的时候,如果我再点击下一条记录,它就报错,就溢出了引用2楼的回复:

引用1楼的回复:dataGridView1.CurrentCell=dataGridView1[j,i];i,j反了看错了,和这无关intcell=dataGridView1.Rows[1].Cells.Count;//得到总列数你的记录会不会是不够2行在这里报错?

解决方案五:
引用3楼的回复:

不是啊,我的记录很多的,就是一行一行这么定位下去,知道符合条件的最后一行的时候,如果我再点击下一条记录,它就报错,就溢出了引用2楼的回复:引用1楼的回复:dataGridView1.CurrentCell=dataGridView1[j,i];i,j反了看错了,和这无关intcell=dataGridView1.Rows[1].Cell……

具体在哪行代码溢出的?
解决方案六:
你点击下一条是privatevoidbutton7_Click(objectsender,EventArgse)?该为公共变量试看J、i
解决方案七:
dataGridView1.RowCountdataGridView1.ColumnCount跟踪查看J、I的值看看

时间: 2024-09-13 09:42:18

定位代码,有点缺陷,就是到了最后一条记录的时候,再点击下一条就会报错,回不了开始的记录的相关文章

ie8下 全选功能报错-ie8下 JS全选功能报错 求达人帮忙看下代码

问题描述 ie8下 JS全选功能报错 求达人帮忙看下代码 // ???? function autoCalDaysNm() { for(var j=1; j<=29; ++j) { var el = $("#writeForm input[name=atdDay" + j + "]"); var d = Date.parse("2016/02/" + el.val()); if (d) { var t = d.toString("

字符串-求大神帮忙看看这个c语言他题目代码的缺陷~~

问题描述 求大神帮忙看看这个c语言他题目代码的缺陷~~ 7.1连接两个字符串 不使用 strcat 函数,编写一个程序将两个字符串连接起来,注意程序首先需要通过键盘输入两个字符串,然后将它们连接起来,将连接后的字符串存储于新的字符数组中,再打印数出. #include<stdio.h> int main() { char a[50],b[50],c[50];int i=0,j; gets(a); gets(b); while(a[i]!='') { c[i]=a[i]; i++; } j=i,

ios-遇到bad_access错误该怎么定位代码?开启了zoombie object

问题描述 遇到bad_access错误该怎么定位代码?开启了zoombie object 今天遇到了bad_access错误,控制台没什么提示,到网上搜了一下,都说开启僵尸对象,但是开启了之后,控制台还是没什么提示 完全不知道代码哪出错了 解决方案 楼主 异常断点 打开试试

多个常见代码设计缺陷

0.前言 在软件设计开发中,代码的设计都体现在:子系统与子系统.模块与模块.函数与函数之间的关系,设计越糟糕的软件,维护成本越高,质量也往往难以达标和称赞. 好的设计必定是:层次关系简洁.清晰.易维护和扩展的. 不会研究太高深的设计,只总结出一些常见的代码设计缺陷,这些设计缺陷如能很好的解决和避免,相信代码能力(编写.设计.评审.重构)能提高一个档次. 主要介绍下面15个常见代码设计缺陷: 1.复杂函数(Blob Operation) 缺陷特征:指的是代码行多,分支嵌套深,变量多,参数多,注释多

短信发送-在通过百度API提供的定位服务实现发送包含地理位置短信的功能时软件报错,求解~~

问题描述 在通过百度API提供的定位服务实现发送包含地理位置短信的功能时软件报错,求解~~ 请问如何将获取到的地理位置信息转换成可以在短信发送代码中调用的字符呢??

代码-vc 6.0 error c2491 报错啊,头大

问题描述 vc 6.0 error c2491 报错啊,头大 简单又奇怪的问题又来了... debug版完全正常:release版报错c2491. definition of dllimport function not allowed. (我是接手的别人的项目,项目工程代码里没有看到有dllimport 或者是其他明显的问题啊). 解决方案 检查一下你Release版本跟Debug版本的工程配置,尤其预编译宏的设置. 应该有宏定义不一致,导致dllexport,dllimport的导入 解决方

win2003自动启动-Windows 2003 SP1报错,提示:原因代码: 0x8000005 ~求助

问题描述 Windows 2003 SP1报错,提示:原因代码: 0x8000005 ~求助 Windows 2003 SP1报错,提示:原因代码: 0x8000005 ~求助 系统会经常自动重新启动!请高手解决 急求助! 解决方案 查看系统日志,分析具体错误的模块,错误信息

代码-spring报错 mismatched input &amp;amp;#39;gt&amp;amp;#39; expecting EOF

问题描述 spring报错 mismatched input 'gt' expecting EOF 代码如下: <?xml version="1.0" encoding="UTF-8"?> xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:util

java小白求解,下面的代码是按照书上的例子抄下来的,不明白为什么报错。

问题描述 java小白求解,下面的代码是按照书上的例子抄下来的,不明白为什么报错. 代码如下:主要问题就是报错的地方:已经用注释吧报错贴上:还看不懂这个报错,求大神帮助:package Calendar; import java.util.Scanner; public class Calendar { public static void main(String[] args) { Scanner in = new Scanner(System.in); System.out.println(