C# WPF组合框问题

C# WPF组合框问题,c#,wpf,combobox,C#,Wpf,Combobox,给你们大家一个简单的问题 我有两个组合框,其中一个包含硬编码的数据: <ComboBox> <ComboBoxItem/> </ComboBox> Xaml: 谢谢 首先将SelectedItem转换为ComboBoxItem,然后将ComboBoxItem。内容将具有字符串值 ComboBoxItem item = this.cboForm.SelectedItem as ComboBoxItem; if (it

给你们大家一个简单的问题

我有两个组合框,其中一个包含硬编码的数据:

<ComboBox>
    <ComboBoxItem/>
</ComboBox>
Xaml:



谢谢

首先将
SelectedItem
转换为
ComboBoxItem
,然后将
ComboBoxItem。内容将具有字符串值

        ComboBoxItem item = this.cboForm.SelectedItem as ComboBoxItem;
        if (item != null)
        {
            MessageBox.Show(item.Content.ToString());
        }

您应该将对象重写为字符串()。@Sonhja尝试过,但运气不好,同样的事情一直在发生。能否显示完整的
switch case语句
请发布完整的代码?请在XAML上使用DisplayMemberPath并指定要显示的成员。只需简单的问题,当combobox从另一个源填充时,为什么不必转换它就可以工作呢?当您使用
ComboBoxItem
时,
combobox
s ItemSource实际上是一个列表,但是当您从后面的代码填充时,您将为ItemsSource分配一个列表,因此在第二种情况下不需要转换。
<ComboBox x:Name="cboForm" TabIndex="3" HorizontalAlignment="Left" Margin="746,618,0,0" VerticalAlignment="Top" Width="630" FontSize="48" FontWeight="Bold" Height="74" SelectionChanged="cboForm_SelectionChanged" >
    <ComboBoxItem Content="Directional Bore" HorizontalAlignment="Left"  />
    <ComboBoxItem Content="Drain Tile Break" HorizontalAlignment="Left"/>
    <ComboBoxItem Content="Fiber Installation" HorizontalAlignment="Left"/>
</ComboBox>
        ComboBoxItem item = this.cboForm.SelectedItem as ComboBoxItem;
        if (item != null)
        {
            MessageBox.Show(item.Content.ToString());
        }