我似乎無法找到一種簡單易用的.net原生方法來獲取.net winform上的組合框,以顯示一個值並根據選擇返回另一個值,而無需創建自己的幫助器類,並且知道winforms將會在放入它的對象上顯示ToString方法。在.net組合框中顯示一個值並存儲另一個值的最佳方法是什麼?
這就是我現在正在做的,非常普遍。首先,創建輔助類。
Public Class ListItem
Public Value As Object
Public DisplayString As String
Public Sub New(ByVal NewValue As Object, ByVal NewDisplayString As String)
Value = NewValue
DisplayString = NewDisplayString
End Sub
Public Overrides Function ToString() As String
Return DisplayString
End Function
End Class
然後,從集合或其他任何東西加載組合框。
For Each o as WhateverObject In CollectionIwantToaddItemsFrom
li = New ListItem(o.ValueToReturn, o.ValueToDisplay)
Me.ComboBox1.Items.Add(li)
Next
最後,使用對象
Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As Object, ByVal e As EventArgs) Handles ComboBox1.SelectedIndexChanged
if me.combobox1.selecteditem is nothing then exit sub
Dim li As ListItem = me.ComboBox1.SelectedItem
Dim o as object = li.value
'do stuff with o.
end sub
我敢肯定有東西,我比較好在我眺望框架使用。它是什麼?