Динамические пункты меню в WPF - PullRequest
2 голосов
/ 08 июня 2010

Есть ли способ создать раздел в меню для списка пунктов меню, который будет заполнен чем-то вроде ObservableCollection?

Я хотел бы повторить функциональность окна в Visual Studio, где вкладки открытых документов перечислены в нумерованном списке, ограниченном первыми 10.

Ответы [ 3 ]

2 голосов
/ 06 сентября 2010

См. "Merge ContextMenus" отсюда . Вы можете найти дополнительную информацию, выполнив поиск CompositeCollection и menu / ContextMenu.

РЕДАКТИРОВАТЬ: Только что увидел, что CompositeCollection уже упоминалось в комментарии, но я собираюсь оставить это здесь для справки.

1 голос
/ 08 июня 2010

Как ваше меню получает данные прямо сейчас? Это данные? Отметьте эту статью для привязки вашего меню к коллекции.

Теперь вам нужно добавить логику, когда нужно добавить элемент в коллекцию.

Например: в вашем сценарии вы должны сохранить открытые документы в списке. Затем необходимо отфильтровать первые 10 документов и добавить их в свойство children класса MenuItem, указанного в статье.

0 голосов
/ 08 июня 2010

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

...