c# - 在 WinForms 的组合框中插入项目

标签 c# winforms combobox

在我的程序中,我有 2 个组合框作为下拉列表。只有在从第一个 ComboBox 中选择了一个项目后,我才想将项目添加到第二个 ComboBox。

到目前为止我有这个:

InitializeComponent();
comboBox1.Items.Add("Category1");
comboBox1.Items.Add("Category2");
comboBox1.Items.Add("Category3");
comboBox1.SelectedValueChanged += new EventHandler(comboBox1_TextChanged);

private void comboBox1_TextChanged(object sender, EventArgs e)
{
    if (comboBox1.SelectedText.Equals("Category 1"))
    {
        DataTable cat = dataTableAdapter.GetByCategory("category1");
        foreach (DataRow row in cat.Rows)
        {
            comboBox2.Items.Add(row.ItemArray[1]);
        }
    }
}

最佳答案

来自 MSDN 的关于使用 ComboBox.SelectedText 和 DropDownList 样式的说明:

如果 DropDownStyle 设置为 DropDownList,则返回值为空字符串 ("")。

所以也许你必须使用 SelectedIndexSelectedItem属性(或将 ComboBox 的样式更改为其他类型之一)。

关于c# - 在 WinForms 的组合框中插入项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9087301/

相关文章:

c# - Dropbox 整合

c# - 为什么 ConcurrentQueue 和 ConcurrentDictionary 有 "Try"方法——TryAdd、TryDequeue——而不是 Add 和 Dequeue?

c# - Azure Cosmos DB - 为查询提供分区键的方式有何不同?

c# - 可以在 C# 中使用泛型表单吗?

c# - 捕获异常,然后抛出/发送异常并继续

.net - 如何检查listView是否为空

C# 在清除/设置为 null 后重新填充字典

javascript - 对ajax返回的选择值添加jquery onchange效果

c# - WPF ComboBox...如何设置 .Text 属性?

c# - 为 .NET 属性目标指定所需的基类