Как убедиться, что проверка в слое декоративного элемента отображается за другими элементами управления

У меня есть приложение WPF с проверкой пользователя. В соответствии с это визуализируется в слое декоративных элементов, который отображается над всеми остальными слоями. документация.

На скриншоте видно, что это не совсем то, что я хочу. У меня есть всплывающее окно под названием «Подробности оповещения», которое представляет собой ChildWindow из Расширенный набор инструментов WPF. Он расположен за декоративным слоем. Как сделать так, чтобы всплывающее окно отображалось перед слоем декоративного элемента?

Я уже пытался установить действительно высокое значение Panel.ZIndex в ChildWindow, но это не имеет значения.


Скриншот


person Ronald Wildenberg    schedule 20.04.2012    source источник


Ответы (1)


Для предоставления заданного < href="http://msdn.microsoft.com/en-us/library/system.windows.documents.adornerlayer.aspx" rel="noreferrer">AdornerLayer для набора элементов управления. По умолчанию этот декоратор находится в шаблоне по умолчанию Window, таким образом покрывая все элементы управления в окне.

Добавьте новый AdornerDecorator вокруг формы и убедитесь, что ChildWindow идет после него, чтобы он был над декоратором.

<Grid>
  <AdornerDecorator>
    ... your summary form ...
  </AdornerDecorator>
  <ChildWindow .. />
</Grid>
person Julien Lebosquain    schedule 20.04.2012
comment
Блестяще... не знал об этом, спасибо! - person TimothyP; 18.02.2014