Panel1 по умолчанию скрыта и открывается по нажатию на button. Нужно чтобы она закрывалась сама если пользователь нажмет в любом месте, кроме самой panel1.
Оп-па! Кто бы мог предположить?
Свойство класса System.Windows.Forms.Control
public bool Capture { get; set; }
https://msdn.microsoft.com/en-us/library/system.windows.forms.control.capture(v=vs.110).aspx
When a control has captured the mouse, it receives mouse input whether or not the cursor is within its borders.
После того, как элемент управления захватил мышь, он получает события мыши независимо от того, находится ли мышь внутри или вне этого контрола.
Назначаете panel.Capture = true; и в обработчике MouseDown этой панели проверяете координаты в аргументе события мыши - MouseEventArgs.
Сборка персонального компьютера от Artline: умный выбор для современных пользователей