所以,我有一个comoboBox1和textBox1
comboBox1设置为dataview dv
中列的名称,textBox1用于搜索
所以,我尝试了类似这样的简单代码:
dv.RowFilter = "Convert([City Number], System.String) LIKE '%2%'";
并且上面的代码效果很好
然后我尝试用comboBox1和textBox1中的值替换City Number和%2%,
这样的事情。
dv.RowFilter = "Convert([comboBox1.SelectedItem.ToString()], System.String) LIKE '%{0}%'", textBox1.Text;
语法似乎不对,但你知道我的意思。
那么如何解决这个问题?
答案 0 :(得分:1)
您可以使用string.Format
以这种方式制作过滤器表达式:
var column = comboBox1.GetItemText(comboBox1.SelectedItem);
var value = textBox1.Text;
var filter = string.Format("Convert([{0}], System.String) LIKE '%{1}%'", column, value);
dv.RowFilter = filter;