Winforms Создание панели стиля раскрывающегося списка

StackOverflow https://stackoverflow.com/questions/802426

  •  03-07-2019
  •  | 
  •  

Вопрос

Я пытаюсь создать свой собственный раскрывающийся список в стиле автозаполнения в С#.net2.0.Для ускорения разработки я построил свой элемент управления как UserControl, но столкнулся с проблемой сделать это таким образом.

Когда нарисован настраиваемый раскрывающийся список, мне нужно изменить размер области UserControl, чтобы можно было отобразить список параметров.

В идеале я хочу иметь возможность имитировать поведение списка droppown, в котором список параметров рисуется «плавающим» и не ограничен высотой и шириной UserControls (и даже границами родительских форм).Всплывающая подсказка — еще один пример неограниченного «плавания», которого я желаю.

Единственный способ добиться этого — создать на лету новую форму без рамки или заголовка и отобразить ее, когда требуется всплывающее окно.

Есть ли лучший (но и быстрый) способ сделать это?

ТИА

Это было полезно?

Решение

Вам нужно будет использовать Form или NativeWindow, чтобы элемент управления мог правильно плавать.Заставить форму следовать за элементом управления достаточно просто, но сложнее реализовать и решить все проблемы с фокусировкой/скрытием, особенно если вам нужна плавная навигация с помощью табуляции/клавиш.

Другие советы

Вы можете попробовать создать элемент управления на основе элемента управления раскрывающейся кнопкой ToolStrip.Я считаю, что этот элемент управления обладает той функциональностью, которую вы ищете.Я нашел эту ссылку для создания элементов управления на основе ToolStrip, вы можете попробовать начать с нее.

http://blogs.msdn.com/jfoscoding/attachment/1335869.ashx

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top