如何通过标签获取ComboboxItem索引? - c#

我有以下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(); 

现在,我需要做相反的情况,找到标记为ComboBoxItemComboBoxItem索引,并自动将其选择为:

Colors.SelectedIndex = "element found";

这可能吗?

参考方案

使用linq查询并找出答案。这是一个示例代码

var selectedItem = Colors.Items
  .Cast<ComboBoxItem>()
  .Where(e => e.Tag.ToString() == "#FDB75B")
  .FirstOrDefault();

Colors.SelectedItem = selectedItem;

WPF AvalonDock添加文档 - c#

我有一个带有AvalonDock的窗口。在启动时,将打开一个文档,其中充满LocControllers用户控件(LocControllersViewModel)。现在,当双击LocController时,我想让LocController用户控件在新文档中打开。因此,第一个文档始终是概述,充满了LocController用户控件,而其他文档则在双击后添加。我已…

无法解析Json响应 - php

我正在尝试解析一个包含产品类别的JSON文件,然后解析这些类别中的产品,并在div中显示它们。我的问题:虽然我可以获取类别,但我不知道如何索取产品(并将它们显示在类别下)。我的剧本:<script src="http://code.jquery.com/jquery-1.7.1.min.js"></script> …

<T>如何在这里处理String和Integer - java

我不明白T如何使用Integer和String。如此处显示功能中所示,T同时处理整数和字符串。该代码如何工作?class firstBase { <T> void display(T give_num, T give_String) { System.out.println("The given number is = " +…

jQuery不起作用 - php

我正在使用带有ajax的jquery。有时,给出错误$未定义。这是我的代码:<script language="javascript" type="text/javascript"> var base_path="<? echo $this->baseUrl().'/…

在列表中添加动态项目<dynamic> - c#

List<dynamic> homePageDataList = new List<dynamic>(); DataTable dt = GetData(); homePageDataList.Add(new { Vehicle = dt.Rows[0]["vehName"], Lati = dt.Rows[0][…