Yunkai! 2021-12-05 07:14 采纳率: 100%
浏览 95
已结题

C# dataGridView 查询数据问题

查詢dataGridView某列中是否存在某个字符串,有返回所在的行数,没有则返回null,目前我的查询方法是使用for循环if对比查询效率低,大佬们有更好的办法吗?

img

  • 写回答

3条回答 默认 最新

  • CSDN专家-showbo 2021-12-05 12:25
    关注

    直接查询数据源。如果数据源是DataTable,获取DataView后设置RowFilter就能查询到数据行数据。不过题主获取行号做什么呢?如果是做过滤直接过滤下数据源然后给dgv重新绑定数据就能显示对应的数据了。
    示例

    img

    
    using System;
    using System.Data;
    class Sample
    {
        public static void Main()
        {
            DataTable dt = new DataTable();
            dt.Columns.Add("colname");
            dt.Rows.Add("aaa");
            dt.Rows.Add("bb");
            dt.Rows.Add("cc");
            DataView dv = dt.DefaultView;
            dv.RowFilter = "colname like '%bb%'";
            Console.WriteLine(dv.Count);
            Console.ReadKey();
        }
    }
    
    

    有帮助或启发麻烦点下【采纳该答案】,谢谢~~有其他问题可以继续交流~

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 12月14日
  • 已采纳回答 12月6日
  • 修改了问题 12月5日
  • 创建了问题 12月5日