防止下拉区域打开窗体中的combobox控件

我在Windows窗体中有一个自定义combobox控件。 我想实现一种function,其中基于某些条件不应显示下拉区域,即我需要根据某些条件阻止combobox打开。

我找到了一个可以实现这一目标的链接,但它完全阻止了下拉区域的显示。 此外,我无法根据我的方便调整方法。 链接在这里给出。

只需将您的条件添加到if语句:

 public class CustomComboBox : ComboBox { protected override void WndProc( ref Message m ) { if(yourCondition && (m.Msg == 0x201 || // WM_LBUTTONDOWN m.Msg == 0x203)) // WM_LBUTTONDBLCLK return; base.WndProc( ref m ); } }