我尝试保存选定的组合框项并加载它以在下一个程序启动时选择。我已经尝试使用SelectedIndex来保存它,但这是一个坏主意,因为索引可以在新会话中更改。所以我想使用SelectedText来保存所选的项目(COM端口)。 但是当我保存它并查看文件时,它只是空的。它不保存Combobox中显示的文本。为什么会这样? 这是我的代码。
//Load Com Port List into comboBoxes
string[] portNames = SerialPort.GetPortNames();
foreach (var portName in portNames)
{
comboBox2.Items.Add(portName);
}
然后我从ComboBox中选择一个COM端口,并想保存它。
File.WriteAllText("portsave1", textBox18.Text + "+" + comboBox2.SelectedText);
但是,当我查看保存文件时,comboBox2.SelectedText
只是一个空字符串。为什么呢?!
因此,当我想使用以下代码加载它时,它不起作用。
comboBox2.SelectedIndex = comboBox2.FindStringExact(comport);
答案 0 :(得分:2)
我认为您需要使用comboBox2.SelectedItem.ToString()
,因为您在我假设初始化期间添加了Items
。
答案 1 :(得分:2)
尝试
comboBox2.SelectedItem.ToString()
答案 2 :(得分:-2)
好的,谢谢你,我解决了这个问题。您的所有代码都是正确的,有许多方法,例如comboBox.Text
,comboBox.Item
来保存它....我的问题是,我保存了两次,一次是在连接到刻度后,一次是表单正在关闭...当Form关闭时,它将选定的索引写入文件,这就是为什么它无法工作。我没有注意到这一点,并想知道为什么它不起作用。对不起,谢谢!