Как создать оверлейную часть элемента управления в Winforms C #? - PullRequest
0 голосов
/ 17 июня 2011

Мне нужно создать пользовательский элемент управления, который имеет расширяемую часть как панель и часть текстового поля.Расширяемая часть представляет собой панель, которая будет либо видимой, либо невидимой.Но когда панель видна / развернута непосредственно под текстовым полем, я не хочу, чтобы смежные элементы управления смещались вниз под панелью, а панель должна просто перекрывать элементы управления, которые находятся там только под пользовательским элементом управления.Как мне реализовать это в проекте Winforms C #?Я открыт для использования пользовательского контроля для этого сценария.

Спасибо Sunil

1 Ответ

1 голос
/ 17 июня 2011

Я думаю, что ваша реализация расширения и свертывания не самая лучшая, потому что вы просто накладываете элементы управления вместо того, чтобы скрывать их. Одним из недостатков является то, что наложенные элементы управления могут быть сфокусированы нажатием клавиши Tab, и они могут иметь значение, которое, я думаю, выходит за пределы цели.

Я бы предложил другую реализацию, создав две панели (одну для заголовка и другую для содержимого), и при нажатии кнопки свертывания панель содержимого будет скрыта, если присвойте свойству Visible значение false и его Hight до 0.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...