我有以下Combobox
:
<ComboBox x:Name="Colors" FontSize="20">
<ComboBoxItem Background="#46d6db" Tag="#46d6db">Blue</ComboBoxItem>
<ComboBoxItem Background="#FDB75B" Tag="#FDB75B">Orange</ComboBoxItem>
<ComboBoxItem Background="#51B749" Tag="#51B749">Green</ComboBoxItem>
</ComboBox>
现在,您将看到三个具有特定
Tag
属性的ComboBoxItem。这里的tag属性是颜色的值。我需要知道的是:如何通过Tag属性获取特定ComboBoxItem的索引?
我将尝试更清楚地解释这一点:假设我有一个名为
color
的字符串作为值#FDB75B
,现在我需要找到具有相同Tag
的ComboBox项并占据此,尤其是。string color = "#FDB75B";
//In this way I get the Tag property of the selected item
((ComboBoxItem)Colors.SelectedItem).Tag.ToString();
现在,我需要做相反的情况,找到标记为
ComboBoxItem
的ComboBoxItem
索引,并自动将其选择为:Colors.SelectedIndex = "element found";
这可能吗?
最佳答案
使用linq查询并找出答案。这是一个示例代码
var selectedItem = Colors.Items
.Cast<ComboBoxItem>()
.Where(e => e.Tag.ToString() == "#FDB75B")
.FirstOrDefault();
Colors.SelectedItem = selectedItem;
关于c# - 如何通过标签获取ComboboxItem索引?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37054482/