基于从文本文件填充的组合框列表的C# WPF组合框选择事件

cyvaqqii  于 2023-01-14  发布在  C#
关注(0)|答案(1)|浏览(128)

我有一个下拉组合框,是从一个文本文件填充。该组合框是由多个服务器组填充。这是工作正常。

servergroups.txt
Group1
Group2
Group3
public MainWindow()
        {
            InitializeComponent();
            ComboBox2.ItemsSource = File.ReadAllLines(@"c:\temp\servergroups.txt");
        }

我遇到的问题是,我还试图根据在组合框中选择的服务器组从服务器文本文件填充服务器列表框。
一个二个一个一个
当我从组合框下拉菜单中选择任何项目时,我收到以下异常

系统无效转换异常:'无法将类型为' System.String '的对象强制转换为类型' System.Windows.Controls.ComboBoxItem '。'

谢谢大家!

bn31dyow

bn31dyow1#

错误消息明确指出SelectedItem的类型为string
将字符串集合赋给SelectorItemsSource属性时,SelectedItem也是字符串:

if ((string)ComboBox2.SelectedItem == "Group1")
{
    Listbox1.ItemsSource = File.ReadAllLines(@"c:\temp\Group1.txt");
}

通常,SelectedItem属性所持有的对象是Items集合中当前选定的元素,因此当SelectedIndex〉= 0时,以下条件为真:

selector.SelectedItem == selector.Items[selector.SelectedIndex]

相关问题