如何实现单击除了该控件外其他控件,使该控件隐藏起来?

怎么实现单击除了该控件外其他控件,使该控件隐藏起来????
一个窗体上有各种控件,现在想实现这样的功能:点击一个按钮,使隐藏的ListBox控件显示出来,然后点击该窗体内除这个Listbox控件外的其他任何控件后,使Listbox控件隐藏起来,就像Combobox控件的下拉框一样,怎么实现??(除了去实现其他各个控件的Click事件)
------解决方案--------------------
首先,你所谓的任何一个“其它控件”都要捕获单击事件。

其次,在上述事件处理方法中,需要判断是否有需要“隐藏控件”的任务。这通常需要你为“隐藏任务”设计一个对象结构(并且可以将“隐藏、显示”做为通用的接口方法,以备将来扩展到个种子类对象中),或者至少(如果数据结构简单得实在没有什么内容的话)使用一个List<Control>之类的。在实践处理方法中,遍历这个集合,将需要隐藏的控件隐藏。