2016-11-24 9 views
0

このコードを使用してDatagridviewのレコードを検索しましたが、機能していません。間違いを見つけるのを手伝ってください! C#を使用してDatagridviewでレコードを検索するには

private void txtSearch_KeyPress(object sender, KeyPressEventArgs e) 
     { 
      if (e.KeyChar == (char)13) 
      { 
       if (string.IsNullOrEmpty(txtSearch.Text)) 
       { 
        dataGridView.DataSource = customerBindingSource; 
       } 
       else 
       { 
        var query = from o in customerBindingSource.DataSource as List<Customer> 
           where o.CustomerID == txtSearch.Text||o.Fullname.Contains(txtSearch.Text) || o.Email == txtSearch.Text || o.Address.Contains(txtSearch.Text) 
           select o; 
        dataGridView.DataSource = query.ToList(); 
       } 
      } 
     } 
+0

詳細を記入してください。このコードをデバッグするとどうなりますか?一致した内容が含まれているセルでデータソースをリセットして、フォーカス()をリセットしませんか?これはより典型的な検索動作です。あなたがコード化したものは、フィルタのように聞こえます。 –

+0

データソースをリセットする必要はないと思います。すべてが検索テキストボックスを除いて機能するからです。あなたが画像を見ることができるように、私が検索テキストボックスに書き込むとき、何も起こらない –

+0

'どこでもo.Customer.ID LIKE '%' + @id + '%'' ....と '|| '' connection.Parameters.AddWithValue( "@ id"、txtSearch.Text); ' – Makishima

答えて

0

Snapshot1はそうちょうど確認するために、あなたは検索ボックスに入力し、Enterキーを押しますと、何も起こらないと言っていますか?また、値を比較するときは、大文字と小文字を区別しないで比較してください:key.Equals(txtSearch.Text、stringcomparison.ordinalignorecase)

+0

あなたの提案をありがとう。私は答えを見つけました –

+0

いいえprob:)問題は何ですか? – Swetha

関連する問題