首先,我想为你描述我的问题。检测点击c中的控件#
我想在类似combobox的东西中显示大量记录,但是因为combobox不是显示如此巨大数据量的好解决方案,所以我模拟了DataGridView的组合框行为。
现在我的问题是,当用户点击DataGridView时,DataGridView应该关闭(就像它没有折叠或丢弃时的组合框)。但是窗体上有很多其他的控件,我不能处理所有这些事件的点击事件,以检测出DataGridView已被点击。
总结我寻找一个简单的解决方案,用于隐藏DataGridView如果用户点击失控。
在最后,我知道控件的MouseCapture属性的模糊认识,但我不能使用它,我不知道如何使用它来处理我的愿望。我很感激你,如果你可以帮助我使用MouseCapture for解决这个问题或给出另一种解决方案
感谢您
显然失去了重心,离开心不是我的asnwer – hamed
我认为ComboBox控件的下拉部分实际上是从文本框中一个单独的窗口。您可以尝试类似的方法:在独立的专用窗口中显示DataGridView,并在停用该窗口时隐藏该窗口。 – adv12
也许有一个简单的解决方案,但我在WinForms中有点生疏,所以现在只能建议像http://stackoverflow.com/questions/4991044/winforms-intercepting-mouse-event-on-mainform -first-not-on-controls –