【解決方法】(C#) datagridview1 の検索番号


Hello everyone!
Im trying to search a number in a dataGridView1. When I try to Search for texts, it work perfect. But, when I try to search for numbers, it's not working. In my column I have numbers like: 1, 2, 12, 22, 33... So, When i type: 2 in the textBox1, for the result in dataGridView1 I get rows with numbers 2, 12 , 22. I'd like to see only rows with numbers 2.
Please for your help. Thanks in advance.

私が試したこと:

private void Button1_Click(object sender, EventArgs e)
        {
            string searchValue = textBox1.Text;
            string colName = dataGridView1.Columns[1].Name;//Column Number of Search
            ((DataTable)dataGridView1.DataSource).DefaultView.RowFilter = string.Format(colName + " like '%{0}%'", searchValue.Trim().Replace("'", "''"));
        }

解決策 1

LIKE は非常に具体的なキーワードです。指定された文字列を使用して限定的なワイルドカード マッチングを行います。
あなたの場合、検索パターンは「%<value>%」に変換されます

"Any character, any number of repeats; an exact match for the <value>; Any character, any number of repeats"

したがって、「2」を要求すると、任意の場所に「2」が含まれるものが返されます。 完全一致が必要な場合は、代わりに等価比較を使用してください: “=”

C#
string filter = $"colName = {theTextToSearchFor}";

コメント

タイトルとURLをコピーしました