【问题标题】:How to reset combobox?如何重置组合框?
【发布时间】:2021-02-16 18:58:04
【问题描述】:

我有一个带有下拉样式和 2 个文本框的组合框。我想添加一个条件,如果两个文本框中的任何一个的字符串不为空,那么如果从中选择了任何项目,则组合框应该被重置。

我在 if 子句中使用了combobox.SelectedIndex=-1,但我猜它不起作用,因为我在错误的事件中使用了它。

【问题讨论】:

  • 分享你的代码,你这样做是为了什么?
  • 但它不起作用 - 什么也不说,不要把你的问题变成猜谜游戏 - 显示你的代码

标签: c# .net winforms


【解决方案1】:

确保您的两个文本框都使用 TextChanged 事件,然后将它们指向相同的方法。如果两个框都不为空,则组合框将重置。如果您希望它是其中一个,只需将 && 更改为 ||

    private void TextBox_TextChanged(object sender, EventArgs e)
    {
        if (!string.IsNullOrEmpty(textBox1.Text) && !string.IsNullOrEmpty(textBox2.Text))
        {
            comboBox1.SelectedIndex = -1;
        }
    }

【讨论】:

    【解决方案2】:

    试试这个

    combobox.Items.Clear();
    

    combobox.DataSource = null;
    

    我希望你管理好你的 Text_Changed 事件,因为你还没有发布那个代码

    【讨论】:

      【解决方案3】:

      与 c# 中的 clearselection 相同 WF的命令是

      combobox.ResetText()
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-01-14
        • 2014-04-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-07-21
        相关资源
        最近更新 更多