Я использую всплывающее окно в шаблоне управления MenuItem.Как я могу ограничить размер всплывающего окна на экране
Однако, я не знаю заранее, сколько предметов будет в пункте меню. В результате всплывающее окно может не помещаться на экране, и некоторые элементы могут быть недоступны.
Мое решение - установить MaxSize, скажем, 500, и обернуть ItemsPresenter в ScrollViewer.
Однако это не учитывает размер экрана.
Есть ли способ указать, что всплывающее окно должно быть таким большим, каким оно должно быть, не выходя за пределы экрана?
По-видимому, WPF достаточно умен, чтобы задать направление всплывающего окна (вверх/вниз, вправо/влево), чтобы он был центрирован. Например, если всплывающее окно находится в нижней части экрана, оно будет всплывать над всплывающим окном, а не под ним. Но я не вижу ничего относительно максимального размера.
Спасибо за ответ. Однако это не работает, потому что всплывающее окно может появляться в любом месте экрана. – user380719
Достаточно честный - обновил свой ответ. –
Да, это было бы так. Я надеялся, что будет что-то проще (встроено) – user380719