2013-10-31 142 views
2

我目前正在处理表单,我想根据不同的列筛选条目。用户可以通过使用组合框来选择要进行过滤的列。在它下面,我放置了一个文本框,其中将包含正在搜索的术语。问题是我不知道如何根据用户所做的选择来修改列参数。如果有人能帮我解决这个问题,那就太棒了。这里是文本框代码(即文本框=搜索框):就像你搜索文本做C#更改数据视图筛选器

private void searchBox_TextChanged (object sender, EventArgs e) 
    { 
    string selected_field = comboSort.Items[this.comboSort.SelectedIndex].ToString(); 
    DataView dataView = new DataView (dataset); 
    dataView.RowFilter = string.Format("selected_field LIKE '%{0}%'",searchBox.Text); 
    dataGridView1.DataSource = dataView; 
    } 
+0

,我认为你可以改变现有的数据视图的RowFilter,它代替每次创建一个新的。 –

回答

1

使用字符串格式:

dataView.RowFilter = String.Format("{0} LIKE '%{1}%'", selected_field, searchBox.Text); 
+1

它工作出色。非常感谢你! –