簡體   English   中英

使用textBox_TextChanged在dataGridView中搜索

[英]Search in dataGridView with textBox_TextChanged

我想在dataGridView中進行搜索。 我通過以下方式取出數據:

private void button1_Click(object sender, EventArgs e)
        {
            FileStream f1 = new FileStream("zapis.dat", FileMode.Open);
            BinaryReader br = new BinaryReader(f1);
            int а = 0;
            while (f1.Position < f1.Length)
            {
                string data = br.ReadString();
                string sing = br.ReadString();
                string avtor = br.ReadString();
                string zagl = br.ReadString();
                string janr = br.ReadString();
                string ezik = br.ReadString();
                dataGridView1.Rows.Add(++а, sing, avtor, zagl, janr, ezik, data);
            }
            f1.Close();
        }

對於搜索,我使用:

private void textBox1_TextChanged(object sender, EventArgs e)
    {
        (dataGridView1.DataSource as DataTable).DefaultView.RowFilter =
string.Format("Name LIKE '{0}%' OR Name LIKE '% {0}%'", textBox1.Text);


    }

當我在texhtBox中編寫時,這使我犯了錯誤:

System.NullReferenceException:'對象引用未設置為對象的實例。

(...為System.Data.DataTable)返回null。

有人可以幫我嗎? 如何做到這一點?

首先,您需要將DataTable聲明為對象,然后聲明DefaultView。 例如

            DataTable dt = tDAL.Search(keyword);
        dgvTalents.ItemsSource = dt.DefaultView;

tDAL是我的倉庫中有查詢的方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM