Skip to content

ClientAreaBorder class

Defined in

Namespace: CrissCross.WPF.UI.Controls Assembly: CrissCross.WPF.UI.dll Full name: CrissCross.WPF.UI.Controls.ClientAreaBorder Modifiers: public

Summary

If you use WindowChrome to extend the UI elements to the non-client area, you can include this container in the template of Window so that the content inside automatically fills the client area. Using this container can let you get rid of various margin adaptations done in Setter/Trigger of the style of Window when the window state changes.

Applies to

net10.0-windows10.0.19041, net9.0-windows10.0.19041, net8.0-windows10.0.19041, net481

Class hierarchy
classDiagram
class ClientAreaBorder
class Border
Border <|-- ClientAreaBorder
class IThemeControl {
    <>
}
IThemeControl <|.. ClientAreaBorder

Inherits from: Border

Implements: IThemeControl

Examples

<Style
 x:Key="MyWindowCustomStyle"
 BasedOn="{StaticResource {x:Type Window}}"
 TargetType="{x:Type controls:FluentWindow}">
 <Setter Property="Template" >
 <Setter.Value>
 <ControlTemplate TargetType="{x:Type Window}">
 <AdornerDecorator>
 <controls:ClientAreaBorder
 Background="{TemplateBinding Background}"
 BorderBrush="{TemplateBinding BorderBrush}"
 BorderThickness="{TemplateBinding BorderThickness}">
 <ContentPresenter x:Name="ContentPresenter" />
 </controls:ClientAreaBorder>
 </AdornerDecorator>
 </ControlTemplate>
 </Setter.Value>
 </Setter>
 </Style>

Constructors

NameSummary
.ctorInitializes a new instance of the [ClientAreaBorder](# class.

Properties

NameSummary
static ResizeFrameBorderThicknessGets get the system SM_CXFRAME and SM_CYFRAME values in WPF units.
ApplicationThemeGets or sets the theme is currently set.
PaddedBorderThicknessGets get the system SM_CXPADDEDBORDER value in WPF units.
WindowChromeNonClientFrameThicknessGets if you use a WindowChrome to extend the client area of a window to the non-client area, you need to handle the edge...

Methods

NameSummary
OnVisualParentChanged
Inherited members