Скрыть панель при нажатии за пределами этой панели

197
10 апреля 2017, 03:55

Panel1 по умолчанию скрыта и открывается по нажатию на button. Нужно чтобы она закрывалась сама если пользователь нажмет в любом месте, кроме самой panel1.

Answer 1

Оп-па! Кто бы мог предположить?

Свойство класса 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.

READ ALSO
Ошибка при создании XML файла в Unity3D

Ошибка при создании XML файла в Unity3D

Я имею ошибки и из-за нее не создается файл сохранения

317
Aforge.net работа с потоком видео

Aforge.net работа с потоком видео

в программе камера должна отображать всё происходящее в режиме онлайн без записи информации, для этого использую библиотеки AForgeVideo и AForge

356
Как правильно отобразить partial view?

Как правильно отобразить partial view?

У меня есть меню, которое я беру из базы данных и отображаю его на странице, при выборе одного из пунктов меню, мне нужно подгрузить информацию...

261
Привязка данных в WPF, списки

Привязка данных в WPF, списки

Изучаю еще только WPF, есть сложности в понимании привязки данных к отображению

262