无法设置所选值
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了无法设置所选值相关的知识,希望对你有一定的参考价值。
我有一个组合框从一些扫描功能获取其项目。
如果用户选择一个元素,则在下一次应该选择用户选择的项目(如果它出现在扫描功能输出上)。问题是我无法选择它。
这是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;
}
}
}
通过调试这个,我得到了在组合框中选择的项目,但似乎有些东西覆盖它并且它是空的!
答案
在您的代码中,您绑定Text属性并从后面的代码设置它
从组合框中删除Text =“{Binding Name}”
<ComboBox Width="200" Height="200" Grid.Column="1" Grid.Row="0" Margin="5" Name="SerialPortNames" IsEditable="False"/>
以上是关于无法设置所选值的主要内容,如果未能解决你的问题,请参考以下文章