C#/WPF: Всплывающее Управление Местом в Центре Экрана?

Вот простой, который экранирует меня, когда я вижу разработчиков, которые не понимают его:
- Порядок Операций

21
задан Joseph jun. Melettukunnel 18 November 2009 в 23:50
поделиться

2 ответа

Используйте свойства Placement и PlacementTarget, чтобы расположить его относительно любой панели, находящейся в корне окна. Итак, если у меня есть Grid , StackPanel и т. Д., Которые содержат все остальные «вещи» в окне под названием MainPanel , я делаю что-то вроде:

<Popup
    PlacementTarget="{Binding ElementName=MainPanel}"
    Placement="Center"
>
27
ответ дан 17 October 2019 в 01:13
поделиться

Во-первых, вы можете использовать статические свойства FullPrimaryScreenHeight , FullPrimaryScreenWidth класса System.Windows.SystemParameters , чтобы получить высота и ширина экрана. Затем вы можете установить свойства Top и Left вашего Popup Control, используя ширину и высоту перед его отображением.

Что-то вроде.

double primScreenHeight = System.Windows.SystemParameters.FullPrimaryScreenHeight;
double primScreenWidth = System.Windows.SystemParameters.FullPrimaryScreenWidth;
_yourControl.Top = (primScreenHeight - _yourControl.Height) / 2;
_yourControl.Left = (primScreenWidth - _yourControl.Width) / 2;
3
ответ дан 17 October 2019 в 01:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: