![](/img/trans.png)
[英]How to bind combobox display string and value string through list wpf c#
[英]C# WPF how to check if combobox item is contained in a list<string>
我有一个名为combo的ComboBox。 我手动添加了项目,因为我无法直接链接它们。 原来我不需要。 但是,我希望能够从下拉列表(ComboBox)中选择一个项目,然后单击按钮以检查所选内容是否包含在列表字符串中。
这是我的意思:
XAML:
<ComboBox Name="combo"/>
<ComboBoxItem Content="Aa"/>
<ComboBoxItem Content="Ba"/>
<ComboBoxItem Content="Ca"/>
</ComboBox>
C#
//list
string a = "Aa";
string b = "Ba";
string c = "Ca";
List<string> list = new List<string>();
list.Add(a);
list.Add(b);
list.Add(c);
//button
private void Button_Click_1(object sender, RoutedEventArgs e)
{
}
由于您没有绑定值,因此可以使用SelectionBoxItem
if (list.Contains(combo.SelectionBoxItem.ToString()))
{
}
如果您要绑定列表,
你可以这样
if (list.Contains(Combobox.SelectedItem.ToString())))
{
}
我不确定为什么要编码并将其添加到我的手上。 WPF的常用方法是将您的列表放在ViewModel
(通常使用ObservableCollection
),然后将您的ComboBox
绑定到它。
<ComboBox Name = "combo" ItemsSource="{Binding YourCollectionNameHere}"
SelectedItem="{Binding YourStringProperty}"
/>
从那里,您可以使用选定的项目,或其他使您喜欢的项目挠痒痒,然后到处乱逛。
您可以使用Sajeetharan和Adriano的建议,也可以在更改时进行检查,然后让您的逻辑发生,或者更新gui ...天空是极限:)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.