Программное ограничение/установка высоты подменю ContextMenu

Я программно создаю значок уведомления на панели задач и щелкаю правой кнопкой мыши ContextMenu в приложении С# WPF.

Несколько элементов ContextMenu имеют подменю, которые заполняются из вызовов веб-сервиса. Один из них может охватывать всю высоту экрана пользователя, потому что он содержит более 100 записей, и вы получаете стрелки переполнения. Я хотел бы иметь возможность установить максимальную высоту до 500.

Мне не удалось выяснить, как программно ограничить размер этих подменю ContextMenu. Ниже приведен код, который я использовал для создания подменю «Каталог», которое теоретически может содержать от 0 до 1000 записей.

Является ли это возможным? Любая помощь приветствуется, спасибо.

m_menu = new System.Windows.Forms.ContextMenu();

System.Windows.Forms.MenuItem newMenuItem4 = new System.Windows.Forms.MenuItem("Directory");
System.Windows.Forms.MenuItem newExistMenuItem4 = (System.Windows.Forms.MenuItem)this.m_menu.MenuItems[0]; 

if (numbers.Count > 0) 
{
    int indx = 0;
    foreach (string number in getContactDirectory() )
    {
       newMenuItem4.MenuItems.Add(indx,
       new System.Windows.Forms.MenuItem(number, new System.EventHandler(historyCall)));
       indx++;
    }
    m_menu.MenuItems.Add(menuCounter, newMenuItem4); 
    menuCounter++;
}

person Jeff    schedule 27.03.2014    source источник
comment
Если это WPF, вам НЕ следует использовать System.Windows.Forms материал.   -  person Federico Berasategui    schedule 28.03.2014
comment
Извините, это мой первый проект, и я пришел из мира JavaScript и Java unix. Это было то, что я нашел и понял, чтобы работать. Я хотел бы услышать ваше предложение о том, что правильно использовать.   -  person Jeff    schedule 28.03.2014
comment
см. WPF NotifyIcon   -  person Federico Berasategui    schedule 28.03.2014


Ответы (1)


Вам необходимо ознакомиться с шаблонами элементов управления и XAML.

Взгляните на блог – http://xcalibur37.wordpress.com/2013/05/09/an-enhanced-menuitem-to-limit-submenu-height/

Это должно ответить на ваш вопрос - Лучший способ установить подпункт MenuItem высота меню?

person Carbine    schedule 28.03.2014