1、 C#在dataGridView中遍历,寻找相同的数据并定位

 

[c-sharp] view plain copy

int row = dataGridView1.Rows.Count;//得到总行数

int cell=dataGridView1.Rows[1].Cells.Count;//得到总列数

for (int i = 0; i < row; i++)//得到总行数并在之内循环

{

for (int j = 0; j < cell; j++)//得到总列数并在之内循环

{

if (txtFind.Text == dataGridView1.Rows.Cells[j].Value.ToString())

{ //对比TexBox中的值是否与dataGridView中的值相同(上面这句)

this.dataGridView1.CurrentCell = this.dataGridView1[j, i];//定位到相同的单元格

return;//返回

}

 

}

}

2 、可以实现模糊查询了

 

[c-sharp] view plain copy

int row = dataGridView1.Rows.Count;//得到总行数

int cell=dataGridView1.Rows[1].Cells.Count;//得到总列数

string strTxt = txtFind.Text;//得到输入的字符串,并付值给变量

Regex r = new Regex(strTxt); // 定义一个Regex对象实例

for (int i = 0; i < row; i++)//得到总行数并在之内循环

{

for (int j = 0; j < cell; j++)//得到总列数并在之内循环

{

Match m = r.Match(dataGridView1.Rows.Cells[j].Value.ToString()); // 在字符串中模糊匹配

if (m.Success)

{ //对比TexBox中的值是否与dataGridView中的值相同(上面这句)

dataGridView1.CurrentCell = dataGridView1[j,i];//定位到相同的单元格

return;//返回

}

 

}

}

3、可以决定是否还要继续查找了

 

[c-sharp] view plain copy

private void button3_Click(object sender, EventArgs e)

{

int row = dataGridView1.Rows.Count;//得到总行数

int cell=dataGridView1.Rows[1].Cells.Count;//得到总列数

string strTxt = txtFind.Text;//得到输入的字符串,并付值给变量

Regex r = new Regex(strTxt); // 定义一个Regex对象实例

for (int i = 0; i < row; i++)//得到总行数并在之内循环

{

for (int j = 0; j < cell; j++)//得到总列数并在之内循环

{

Match m = r.Match(dataGridView1.Rows.Cells[j].Value.ToString()); // 在字符串中模糊匹配

if (m.Success)

{ //对比TexBox中的值是否与dataGridView中的值相同(上面这句)

dataGridView1.CurrentCell = dataGridView1[j,i];//定位到相同的单元格

if (MessageBox.Show("是否需要继续查找?", "", MessageBoxButtons.OKCancel) == DialogResult.Cancel)

{

//如果选择了取消就会返回,如果选择了确定,就会继续查找匹配的.

return;//返回

}

}

}

}

}

C#在dataGridView中遍历,寻找相同的数据并定位的更多相关文章

  1. 获取DataGridview中某列的所有数据

    /// <summary> /// /// </summary> /// <typeparam name="T"></typeparam& ...

  2. C#中遍历各类数据集合的方法总结

    C#中遍历各类数据集合的方法总结: 1.枚举类型 //遍历枚举类型Sample的各个枚举名称 foreach (string sp in Enum.GetNames(typeof(Sample))) ...

  3. 【.NET】C#中遍历各类数据集合的方法

    [.NET]C#中遍历各类数据集合的方法   C#中遍历各类数据集合的方法,这里自己做下总结: 1.枚举类型             //遍历枚举类型Sample的各个枚举名称             ...

  4. datagridview中使用checkbox问题。

    如果套用datagridview中的checkboxfield,生成的数据,会出现无法选择datagridview中数据项的问题,即checkbox不可以被鼠标点击,选中/取消选中.此checkbox ...

  5. c#中遍历各种数据集合的方法

    1.遍历枚举类型 补:typeof()方法中只能传具体的类名.类型名称(int32...),不可以是变量名称.类似的方法有GetType(),GteType()方法继承自object,所以c#中任何对 ...

  6. 读取txt文件赋值到DataGridView中

    先查看txt是每条信息之间是通过什么分割,我是通过换行符(\n)分割的, 然后再看每一条信息中字段是通过什么分割,我的字段是通过 tab键(\t)分割. 第一步 先获取到txt文件的路径: //获取绝 ...

  7. WPF利用VisualTreeHelper遍历寻找对象的子级对象或者父级对象

    原文:WPF利用VisualTreeHelper遍历寻找对象的子级对象或者父级对象 简介 本文将完整叙述我利用VisualTreeHelper实现题述功能的全部过程,想直接看函数实现的朋友可以跳到函数 ...

  8. [Winform] DataGridView 中 DataGridViewComboBox 的可编辑

    在 DataGridView 中设置的 DataGridViewComboBox,默认是不可编辑的,即使将其列属性 DisplayStyle 设置成 ComboBox 或其他,也无法编辑: 故作如下处 ...

  9. 禁用datagridview中的自动排序功能

    把datagridview中的自动排序功能禁用自己收集的两种方法,看看吧①DataGridView中的Columns属性里面可以设置.进入"EditColumns"窗口后,在相应的 ...

随机推荐

  1. keras—神经网络CNN—MNIST手写数字识别

    from keras.datasets import mnist from keras.utils import np_utils from plot_image_1 import plot_imag ...

  2. linux 下 nginx的负载均衡

    nginx是如何实现负载均衡的,nginx的upstream目前支持以下几种方式的分配: 1.轮询(默认) 每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除.   2 ...

  3. Spring框架中Bean管理的常用注解

    1. @Component:组件.(作用在类上)可以作用在任何一个类上 2. Spring中提供@Component的三个衍生注解:(功能目前来讲是一致的) * @Controller -- 作用在W ...

  4. ueditor使用注意

    问题1:后端配置项没有正常加载,上传插件不能正常使用! 我用的是开发版,1.4.3.3 .Net版 网上查了很多,后来发现只是配置的问题而已. 1.在根目录下:config.json 其中有Img上传 ...

  5. 64bits access

    http://www.codicode.com/art/64_bit_version_of_microsoft_jet.aspx

  6. PhpStorm 注册相关

    网址 http://idea.lanyus.com/ 最新(2017年9月)PhpStorm 2017.3 .WebStorm 2017.2.5.PyCharm  2016.3激活方式 打开网址 ht ...

  7. socketpair初识

    #include <stdio.h>  #include <string.h>  #include <unistd.h>  #include <sys/typ ...

  8. 2018.07.06 POJ2536 Gopher II(二分图匹配)

    Gopher II Time Limit: 2000MS Memory Limit: 65536K Description The gopher family, having averted the ...

  9. jedis 链接池使用(转)

    Jedis作为redis的最佳客户端,它提供了连接池的特性,“连接池”在通常情况下可以有效的提高应用的通信能力,并且这是一种良好的设计模式.Jedis的连接池设计基于apache commons-po ...

  10. tred_extract_EDED_new

    # -*- coding:utf-8 -*- import re ''' 适应新版本 ''' year='17a'#用户自定义 ss='./data/'#根目录 filename = ss+'EDED ...