c# – 在用户按键上搜索datagridview

我正在尝试选择单元格值以用户按下的相同keychar开始的第一行.那是给我带来麻烦的部分.

以下是我处理事件的方式(使用工作解决方案更新):

private void dataGridView1_KeyPress(object sender,KeyPressEventArgs e)
{
    if (Char.IsLetter(e.KeyChar))
    {
        for (int i = 0; i < (dataGridView1.Rows.Count); i++)
        {
            if (dataGridView1.Rows[i].Cells["Name"].Value.ToString().StartsWith(e.KeyChar.ToString(),true,CultureInfo.InvariantCulture))
            {
                dataGridView1.Rows[i].Cells[0].Selected = true;
                return; // stop looping
            }
        }
    }
}

我确信这是一件很简单的东西,我忽略了,但是因为我的生活无法弄清楚它是什么.

编辑

使用解决方案更新了代码

解决方法

可能是一个案例问题,单元格中的值[“名称”]是否以大写字母开头?尝试在两者上使用toupper或ToLower;或者你可以尝试使用StartsWith(e.KeyChar,true)来忽略它.如果您尝试选择行,则需要执行dataGridView1.Rows [i] .Selected = true

相关文章

目录简介使用JS互操作使用ClipLazor库创建项目使用方法简单测...
目录简介快速入门安装 NuGet 包实体类User数据库类DbFactory...
本文实现一个简单的配置类,原理比较简单,适用于一些小型项...
C#中Description特性主要用于枚举和属性,方法比较简单,记录...
[TOC] # 原理简介 本文参考[C#/WPF/WinForm/程序实现软件开机...
目录简介获取 HTML 文档解析 HTML 文档测试补充:使用 CSS 选...