在组合框XAML/C#/WinRT中查找项的索引

本文关键字:查找 索引 组合 XAML WinRT | 更新日期: 2023-09-27 18:22:12

所以我做了很多研究,尝试了很多人的解决方案,但似乎都不起作用,我不知道为什么。我正试图在我的组合框中找到一个项目的索引:

string Index = programType.Items.IndexOf("Lose Weight").ToString();

索引总是"-1",即使肯定有一个项目的内容/标签为"减肥":

<ComboBox x:Name="programType" Header="Desired goal:" HorizontalAlignment="Left" Grid.Row="5" Grid.Column="1" Margin="30,0,0,0" Grid.ColumnSpan="2" VerticalAlignment="Top" Width="200" PlaceholderText="Desired Goal">
    <ComboBoxItem Content="Lose Weight" Tag="Lose Weight" IsSelected="True" />
    <ComboBoxItem Content="Get Healthier" Tag="Get Healthier"/>
    <ComboBoxItem Content="Get Stronger" Tag="Get Stronger"/>
    <ComboBoxItem Content="Cardio Booster" Tag="Cardio Booster"/>
</ComboBox>

据我所知,它应该起作用吗?我一定做错了什么,有什么建议吗?谢谢

在组合框XAML/C#/WinRT中查找项的索引

以这种方式添加项时,Items属性包含类型为ComboBoxItem的对象。使用以下代码获取字符串列表:

int index = programType.Items
    .Cast<ComboBoxItem>()
    .Select(c => (string)c.Content)
    .ToList()
    .IndexOf("Lose Weight");