2016-11-30 68 views
1

所以,我有一個comoboBox1和textBox1的如何使用組合框和文本框過濾DataView RowFilter中的整數?

comboBox1設置成列從數據視圖DV

的名稱和textBox1的是關於搜索

所以,我想簡單的代碼是這樣的:

dv.RowFilter = "Convert([City Number], System.String) LIKE '%2%'"; 

和上面的代碼效果很好

但後來我試圖取代女媧城從comboBox1和textBox1,

將mber和%2%轉換爲類似這樣的內容。

dv.RowFilter = "Convert([comboBox1.SelectedItem.ToString()], System.String) LIKE '%{0}%'", textBox1.Text; 

語法看起來不對,但你明白我的意思。

那麼如何解決?

回答

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; 
+0

謝謝你,就像一個魅力。這可能是唯一使用參數作爲我可以在互聯網上找到的值的篩選器, –

+0

不客氣:) –

+0

實際上,此代碼篩選列的數據類型爲字符串,整數和日期。 漂亮整潔,是吧? –