2010-12-08 13 views
0

テキストボックスに入力するときに、データグリッド内のテキストをフィルタリングするフィルタを作成したいとします。私は2つのテキストボックスを持っています.1つはテキストをフィルタリングし、もう1つはタイプするテキストをフィルタリングします。私はテキストボックスのいずれかに入力するときにデータグリッドを更新したい。ここに私のコードの一部です:データグリッドのフィルタの作成に関するヘルプ!

private void txtFilterIn_TextChanged(object sender, TextChangedEventArgs e) 
    { 
     DataView dv = dgPortStatus.DataContext as DataView; 
     if (dv != null) 
     { 
      if (dv.Table.TableName.ToUpper() == "PORTSTATUS") 
      { 
       FilterDataGrid(txtFilterIn.Text, txtFilterOut.Text, _dicPortStatus[cmbGroups.SelectedItem.ToString()]); 
      } 
     } 

     List<QuarantineView> qvList = dgPortStatus.DataContext as List<QuarantineView>; 
     if (qvList != null) 
     { 
      //Filter on quarantine manager 
      FilterQuarantineViewList(qvList); 
     } 
    } 

    private void btnFilterInClear_Click(object sender, RoutedEventArgs e) 
    { 
     txtFilterIn.Clear(); 
    } 

    private void txtFilterOut_TextChanged(object sender, TextChangedEventArgs e) 
    { 
     DataView dv = dgPortStatus.DataContext as DataView; 
     if (dv != null) 
     { 
      if (dv.Table.TableName.ToUpper() == "PORTSTATUS") 
      { 
       FilterDataGrid(txtFilterIn.Text, txtFilterOut.Text, _dicPortStatus[cmbGroups.SelectedItem.ToString()]); 
      } 
     } 

     List<QuarantineView> qvList = dgPortStatus.DataContext as List<QuarantineView>; 
     if (qvList != null) 
     { 
      //Filter on Quarantine Manager 
      FilterQuarantineViewList(qvList); 
     } 
    } 

    private void btnFilterOutClear_Click(object sender, RoutedEventArgs e) 
    { 
     txtFilterOut.Clear(); 
    } 

そして、私のフィルタが行く必要がどここの方法は次のとおりです。

private void FilterQuarantineViewList(List<QuarantineView> qvList) 
{ 


} 

答えて

0
private void textBox1_TextChanged(object sender, EventArgs e) 
    { 
     foreach (DataGridViewRow r in dataGridView1.Rows) 
     { 
      r.Visible = false; 
      foreach (DataGridViewCell c in r.Cells) 
       if (c.Value.ToString().Contains(textBox1.Text)) 
       { 
        r.Visible = true; 
        break; 
       } 
     } 
    } 
+0

私はそのようにそれを行う場合、この文は動作しません: リスト< QuarantineView> qvList = List としてのdgPortStatus.DataContext; if(qvList!= null) { //隔離マネージャのフィルタ FilterQuarantineViewList(qvList); –

関連する問題