ComboBox 下拉列表隐藏

Posted

技术标签:

【中文标题】ComboBox 下拉列表隐藏【英文标题】:ComboBox drop down list hiding 【发布时间】:2011-06-07 10:51:01 【问题描述】:

我正在创建一个带有复选框的组合框。一切正常,但我遇到了问题。

当我打开组合框列表并检查任何值列表框时消失。因此,如果我必须检查组合框中的五个值。我必须点击 10 次。

我想打开组合框并检查所有 5 个项目,然后单击组合框并列出

消失!

我通过阅读 Windows 消息进行了尝试。我想我会听到窗口消息以及何时

combo box list消失消息到达我只是通过调用return来跳过这个。

这是我的代码:

protected override void WndProc(ref Message message)
    
     const int CB_SHOWDROPDOWN=0x014F;
     if (message.Msg == CB_SHOWDROPDOWN ) 
     
       if(message.WParam == (IntPtr)0)
       
       SendMessage(Program.poForm.cmbShop.Handle, CB_SHOWDROPDOWN, (IntPtr)1,
         IntPtr.Zero);
        
       return;
     
      base.WndProc(ref message);
    

这行不通!有什么办法可以解决这个问题吗?

【问题讨论】:

【参考方案1】:

你看过code project这个用复选框扩展组合框的例子吗?

【讨论】:

【参考方案2】:

您绝对有必要使用组合框吗?因为.NET中有一个checkedlistbos控件。

【讨论】:

以上是关于ComboBox 下拉列表隐藏的主要内容,如果未能解决你的问题,请参考以下文章

c#的combobox自动隐藏下拉列表的问题

如何隐藏组合框下拉列表中的列?

WPF中combobox显示多列的下拉框

C# winform 下拉列表控件(comboBox)

C# 学习笔记(16)ComboBox下拉列表框宽度自适应

WinAPI ComboBox 不显示下拉列表