我有一个组合框,它从一些扫描功能中获取它的项目。如果用户选择了一个元素,则下一次应该选择用户选择的项目(如果它出现在扫描功能输出中)。问题是我无法选择它。这是 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 回答

红糖糍粑
TA贡献1815条经验 获得超6个赞
在您的代码中,您绑定了 Text 属性并从后面的代码中设置它
从组合框中删除 Text="{Binding Name}"
<ComboBox Width="200" Height="200" Grid.Column="1" Grid.Row="0" Margin="5" Name="SerialPortNames" IsEditable="False"/>
- 1 回答
- 0 关注
- 83 浏览
添加回答
举报
0/150
提交
取消