所选值无法设定

时间:2019-04-25 09:54:03

标签: c# wpf combobox

我有一个组合框,它从某些扫描功能获取其项。

如果用户选择一个元素,则下次应选择用户选择的项目(如果它出现在扫描功能输出中)。问题是我无法选择它。

这是ComboBox的声明:

<ComboBox Grid.Column="1" Grid.Row="0" Margin="5" Name="SerialPortNames" Text="{Binding Name}" IsEditable="False"/>

以及到目前为止我已经尝试过的内容:

private void Window_Loaded(object sender, RoutedEventArgs e)
{
    string portNameSetting = Settings.Default["SerialPortName"].ToString();

    SerialPortNames.ItemsSource = SerialPort.GetPortNames();

    foreach (string SerialPortNameItem in SerialPortNames.Items)
    {
        if (SerialPortNameItem == portNameSetting)
        {
            SerialPortNames.Text = SerialPortNameItem; // why this is not working
            break;
        }
    }
}

通过调试,我在组合框中选择了项目,但似乎有些东西将其覆盖,并且为空!

1 个答案:

答案 0 :(得分:0)

在您的代码中,您绑定了Text属性,并从后面的代码中进行设置

从组合框中删除文本=“ {Binding Name}”

 <ComboBox  Width="200" Height="200" Grid.Column="1" Grid.Row="0" Margin="5" Name="SerialPortNames"  IsEditable="False"/>