2012-07-16 55 views
0

我已經填充的組合框這種方式(getRoundingMethodVals()返回一個列表<String>):詳細版本是更好的還是更嚴格的?

comboBoxRounding.DataSource = RateSetupData.getRoundingMethodVals(); 

...但我看到了一個StackOverflow上回答下列問題:

comboBox1.DataSource = new BindingSource(dict, null); 

。 ..這讓我不知道該不該我的代碼更改爲:

comboBoxRounding.DataSource = new BindingSource(RateSetupData.getRoundingMethodVals(), null); 

這是六中,一和半一打的最-其他情況呢?還是一種方式比另一種方式有強大的優勢?

+0

應該刪除「verboten」,意思是德語中的「禁止/禁止」,在(我的)英文俚語中很常見。無論如何,它都會減損這個問題。 – 2012-07-16 22:26:02

+0

@pst:爲什麼?我知道這意味着什麼 - 我說德語 - 這符合我的意圖。當然,這不是*字面上的*過時的/禁止的,但是我相信你會得到我的漂移。 – 2012-07-16 23:00:12

+0

..在這種情況下,標題中仍然存在問題:儘量避免使用好鬥的語言,並利用空間來更好地總結問題。 – 2012-07-16 23:23:32

回答

1

取決於你想要做什麼。如果你只需要爲用戶填充組合框來選擇一個值,那麼你的第一種方式工作得很好。這是一種單向數據流:從正常到控制。在你的情況下,一個簡單的List(Of String)不需要綁定源。

但是,如果您有更復雜的對象,並且想要更改組合框的值以更改該對象的值,則可以使用BindingSource。這會創建一個雙向數據流。 (在這種情況下,你可以使用BindingList來實現許多BindingSource接口。)

相關問題