Выпадающий элемент управления выбором - PullRequest
1 голос
/ 29 сентября 2011

У меня есть симпатичный маленький UserControl, который представляет собой перетаскиваемый блок с небольшим количеством текста. Справа от элемента управления есть небольшая нажимаемая стрелка, при нажатии которой я хотел бы получить несколько опций из право на контроль.

У меня уже есть класс PopoutWindow, который наследует ToolStripDropDown, который позволяет мне получить всплывающее окно, чтобы получить новый элемент управления, чтобы «выскочить» с правой стороны этой стрелки при следующем использовании.

  MyPopoutWindow options = new MyPopoutWindow ();
  PopoutWindow popout = new PopoutWindow(options);
  popout.Show(arrowButton, arrowButton.Width, 0);

MyPopoutWindow (в настоящее время) пользовательский элемент управления UserControl, который должен быть таким же, как выдвинутое тело ComboBox или ToolStripMenu.

Кто-нибудь знает элемент управления Winforms, который я могу использовать или наследовать, чтобы получить этот эффект? Я пытался использовать ToolStripDropDownMenu и ToolStripDropDown, но получаю следующее исключение:

Top-level control cannot be added to a control.

Спасибо

1 Ответ

1 голос
/ 30 сентября 2011

Решение было на самом деле довольно очевидным (не всегда!). Как я уже упоминал в этом вопросе, я попытался использовать ToolStripDropDown, но это привело к исключению.

Чтобы решить эту проблему, я должен MyPopoutWindow унаследовать ToolStripDropDown, но в конструкторе установите для свойства TopLevel значение false. Это сработало!

public MyPopoutWindow()
{
    TopLevel = false;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...