Ограничить количество видимых элементов меню в контекстном меню

#.net #infragistics #contextmenu

#.net #инфраструктура #contextmenu

Вопрос:

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

Если количество элементов в контекстном меню больше высоты моего экрана, я получаю 2 красивые стрелки в верхней и нижней части моего контекстного меню, позволяющие мне «прокручивать» список доступных записей.

Эта функция довольно приятная, и я хотел бы воспользоваться ее преимуществами: я хотел бы ограничить список видимых пунктов контекстного меню ~ 10, а затем использовать «стрелки» для прокрутки всех пунктов меню.

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

Есть идеи?

Atm Я использую библиотеку Infragistics (PopupMenuTool), чтобы помочь создать контекстные меню.

Дополнение: Кажется, что ContextMenuStrip — это что-то вроде того, что я хочу, но я хочу, чтобы ContextMenuStrip (или что-то подобное) был подменю в моем всплывающем меню.

Ответ №1:

возможно, вам поможет scrollable расширение jquery:http://flowplayer.org/tools/demos/scrollable/index.html
это пример, который вы можете переписать под свои нужды

Комментарии:

1. К сожалению, это не то, что я хочу — я хочу «прокручиваемое» контекстное меню, а не прокручиваемый список

2. @Ando Извините за мой отказ, я вас неправильно понял 🙂

Ответ №2:

Я работаю в Infragistics и в течение нескольких лет был основным разработчиком компонента UltraToolbarsManager. У PopupMenuTool нет способа ограничить его высоту. Размер выпадающего списка всегда зависит от того, где пользователь нажал, сколько элементов в меню и насколько велик экран.

Какое преимущество предоставляет ContextMenuStrip по сравнению с PopupMenuTool? Если вы ищете возможность вложенных меню, PopupMenuTool также обладает этой возможностью. Просто добавьте другой PopupMenuTool к тому, который вы используете в качестве контекстного меню.

Комментарии:

1. Привет, Майк. Я уже использую рекурсивную функцию PopupMenuTool в своем приложении, но искал способ добавить функцию «пользовательская высота» ContextMenuStrip в свое контекстное меню (фактически, в мое вложенное контекстное меню).

2. Как вы устанавливаете пользовательскую высоту? Я опробовал несколько вещей, и, похоже, это можно сделать, установив свойство MaximumSize. В PopupMenuTool нет эквивалента. Вам нужно будет отправить запрос на функцию для этой функциональности: devcenter.infragistics.com/Protected/RequestFeature.aspx