Поместите всплывающее окно WPF внизу экрана - PullRequest
0 голосов
/ 17 февраля 2012

У меня есть Popup, который состоит из сетки меток.Всплывающее окно находится внутри Canvas следующим образом.

   <Canvas x:Name="mainCanvas">
        <Popup x:Name="mainPopup" 
               IsOpen="True"
               PlacementTarget="{Binding ElementName=mainCanvas}"
               PopupAnimation="Fade"
               AllowsTransparency="True"
               Placement="Center">

Обертывание внутри холста (или аналогичного элемента управления) - единственный способ, позволяющий сделать содержимое всплывающего окна прозрачным.

Во всяком случае, все это работает нормально, и я вижу свою сетку меток по центру экрана.Хотя я бы действительно хотел, чтобы сетка меток отображалась в нижней части экрана .Однако, когда я изменяю Placement="Center" на Placement="Bottom", я вообще не вижу всплывающее окно.

1 Ответ

0 голосов
/ 17 февраля 2012

Вы видели это ?Это довольно хорошее объяснение того, как работает размещение всплывающих окон.

Я создал тестовый проект WPF в Blend и вставил ваш точный код, затем изменил Placement на Bottom.Я видел содержимое, которое я добавил во всплывающее окно (TextBlock с некоторым нежелательным текстом), но его было трудно увидеть, поскольку он расположен ниже mainCanvas (как и ожидалось).

Итак ... кроме кода, который вы показали, должна быть какая-то другая проблема.

...