2011-06-07 118 views
1

我正在用复选框创建组合框。每件事情都很好,但我面临一个问题。组合框下拉列表隐藏

当我打开组合框列表并检查任何值列表框消失。所以如果我必须在组合框中检查五个值。我必须点击10次。

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

消失!

我试着通过阅读Windows消息。我认为我会听到窗口消息,当

组合框列表消失消息到达我只是通过调用返回来跳过此。

这里是我的代码:

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); 
    } 

这是行不通的!有没有解决这个问题的方法?

回答

0

您是否有必要使用组合框?因为在.NET中有一个checkedlistbos控件。