【问题标题】:c# combo box winform时间:2019-04-01 标签:c#comboboxwinform
【发布时间】:2011-01-13 10:03:05
【问题描述】:

我有一个带有“选择”文本的组合框。我想设置它,以便用户无法输入。目前他们能够。不过,我看不到任何只读选项。

任何机构都可以提供建议。

谢谢。

【问题讨论】:

    标签: c# winforms combobox


    【解决方案1】:

    将其DropDownStyle 属性设置为ComboBoxStyle.DropDownList。

    参考:http://msdn.microsoft.com/en-us/library/system.windows.forms.comboboxstyle.aspx

    【讨论】:

      【解决方案2】:

      尝试设置DropDownStyle = ComboBoxStyle.DropDownList

      【讨论】:

        【解决方案3】:

        如果你想要它用于所有项目,那么

        set the ComboBox's DropDownStyle property to DropDownList.
        

        如果您只希望它用于“选择”项,则处理 ComboBox 的 KeyDown PS:我已经 --Select-- 作为 ComboBox 中的第一项

         private void comboBox1_KeyDown(object sender, KeyEventArgs e)
                {
                    if (comboBox1.SelectedIndex == 0)
                    {
        
                        e.SuppressKeyPress = true;
                    }
                }
        

        【讨论】:

        • 抑制按键的事情有点hacky。 “右键单击、全选、右键单击、粘贴”仍然有效..
        【解决方案4】:

        使用 DropDownStyle = DropDownList。希望对您有所帮助。

        【讨论】:

        • 如果您希望自动完成功能正常工作,则将组合框设为“ReadOlny”并不总是一个好主意。
        【解决方案5】:

        这行得通

        private void ComboBox_KeyPress(object sender, KeyPressEventArgs e)
            {
                e.Handled = true;
            }
        

        【讨论】:

          猜你喜欢
          • 2020-05-07
          • 2016-10-23
          • 2011-01-31
          • 2013-04-11
          • 2015-07-04
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多