Прошу прощения за мое невежество - я очень новичок в WPF.
Я собираюсь реализовать небольшой визуальный эффект в моем приложении, который дает вид "внутренних" закругленных углов. У рассматриваемого окна есть темная граница, которая инкапсулирует несколько элементов UIE, одним из которых является StatusBar, расположенный в нижней части окна. Этот StatusBar имеет темный фон, который соответствует границе окна. Над StatusBar находится представление контента, которое в настоящее время является Grid - его фон полупрозрачен (я думаю, что это что-то вроде ограничения - вы можете видеть это через представление контента на рабочем столе ниже). Мне бы хотелось, чтобы представление контента (представленное прозрачной внутренней областью на рисунке ниже) выглядело закругленными углами, хотя я ожидаю, что мне придется создать иллюзию самостоятельно.
(Не могу опубликовать изображение, потому что я скрытный человек, а не плакат - , пожалуйста, найдите рисунок здесь )
Мой первый подход состоял в том, чтобы добавить прямоугольник (заполненный темным темным цветом, что и граница) непосредственно над StatusBar и назначить границу с закругленными углами для ее OpacityMask (аналогично решению, предложенному Крисом Кавана **) , К сожалению, эффект, который создается, является полной противоположностью того, чего я пытаюсь достичь.
Я понимаю, что свойство Clip может быть полезно в подобной ситуации, но мне кажется, что использование любого вида геометрии окажется неадекватным, поскольку оно не будет динамически изменяться по отношению к региону, в котором оно находится. .
РЕДАКТИРОВАТЬ: Включая мой XAML:
<Grid Background="{StaticResource ClientBg}" Tag="{Binding OverlayVisible}" Style="{StaticResource mainGridStyle}">
<DockPanel LastChildFill="True">
<!-- Translates to a StackPanel with a Menu and a Button -->
<local:FileMenuView DockPanel.Dock="Top" />
<!-- Translates to a StatusBar -->
<local:StatusView DockPanel.Dock="Bottom" />
<!-- Translates to a Grid -->
<local:ContentView />
</DockPanel>
</Grid>
Любые указатели приветствуются - я готов предоставить более подробную информацию, если это необходимо.
** http://www.dotnetkicks.com/wpf/WPF_easy_rounded_corners_for_anything