无论如何在Silverlight组合框中指定一个值和一个像html下拉列表的文本?我只看到一个内容属性。我读到我可以使用tag属性但是我无法在执行时从后面的代码中检索值...
mycombobox.Tag.toString();
任何人都知道最好的方法吗?
谢谢,
答案 0 :(得分:0)
拥有一个自定义类,可以容纳2个属性来表示下拉项的值和文本字段。并将该类的列表绑定为组合框的ItemsSource。
你可以尝试
public class CustomComboBoxItem
{
public int Key { get; set; }
public string DisplayText { get; set; }
}
和
public MainPage()
{
InitializeComponent();
myComboboxSource = new List<CustomComboBoxItem>();
myComboboxSource.Add(new CustomComboBoxItem { Key = 1, DisplayText = "First Text" });
myComboboxSource.Add(new CustomComboBoxItem { Key = 2, DisplayText = "Second Text" });
}
public List<CustomComboBoxItem> myComboboxSource { get; set; }
在Xaml中,
<ComboBox Name="myCombobox" Height="25" Width="200" ItemsSource="{Binding myComboboxSource, ElementName= mainPage}" SelectedValuePath="Key" DisplayMemberPath="DisplayText"/>
<Button Click="Button_Click" Height="25" Width="100" Content="Get Selected Value"/>
您可以使用
测试所选值 private void Button_Click(object sender, RoutedEventArgs e)
{
MessageBox.Show(Convert.ToString(myCombobox.SelectedValue));
}