Browse Source

Use VisualBrush for GroupBox (#19372)

pull/19383/head
Tim Miller 10 months ago
committed by GitHub
parent
commit
77e9b29388
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 23
      src/Avalonia.Themes.Fluent/Controls/GroupBox.xaml
  2. 23
      src/Avalonia.Themes.Simple/Controls/GroupBox.xaml

23
src/Avalonia.Themes.Fluent/Controls/GroupBox.xaml

@ -33,16 +33,19 @@
CornerRadius="{TemplateBinding CornerRadius}"
BorderThickness="{TemplateBinding BorderThickness}"
BorderBrush="{TemplateBinding BorderBrush}">
<Border.Clip>
<CombinedGeometry GeometryCombineMode="Exclude">
<CombinedGeometry.Geometry1>
<RectangleGeometry Rect="{Binding #RootGrid.Bounds}" />
</CombinedGeometry.Geometry1>
<CombinedGeometry.Geometry2>
<RectangleGeometry Rect="{Binding #Header.Bounds}" />
</CombinedGeometry.Geometry2>
</CombinedGeometry>
</Border.Clip>
<Border.OpacityMask>
<VisualBrush>
<VisualBrush.Visual>
<Canvas Background="Transparent">
<Rectangle Fill="Transparent"
Width="{Binding #Header.Bounds.Width}"
Height="{Binding #Header.Bounds.Height}"
Canvas.Left="{Binding #Header.Bounds.X}"
Canvas.Top="{Binding #Header.Bounds.Y}"/>
</Canvas>
</VisualBrush.Visual>
</VisualBrush>
</Border.OpacityMask>
</Border>
<!-- ContentPresenter for the header -->

23
src/Avalonia.Themes.Simple/Controls/GroupBox.xaml

@ -31,16 +31,19 @@
CornerRadius="{TemplateBinding CornerRadius}"
BorderThickness="{TemplateBinding BorderThickness}"
BorderBrush="{TemplateBinding BorderBrush}">
<Border.Clip>
<CombinedGeometry GeometryCombineMode="Exclude">
<CombinedGeometry.Geometry1>
<RectangleGeometry Rect="{Binding #RootGrid.Bounds}" />
</CombinedGeometry.Geometry1>
<CombinedGeometry.Geometry2>
<RectangleGeometry Rect="{Binding #Header.Bounds}" />
</CombinedGeometry.Geometry2>
</CombinedGeometry>
</Border.Clip>
<Border.OpacityMask>
<VisualBrush>
<VisualBrush.Visual>
<Canvas Background="Transparent">
<Rectangle Fill="Transparent"
Width="{Binding #Header.Bounds.Width}"
Height="{Binding #Header.Bounds.Height}"
Canvas.Left="{Binding #Header.Bounds.X}"
Canvas.Top="{Binding #Header.Bounds.Y}"/>
</Canvas>
</VisualBrush.Visual>
</VisualBrush>
</Border.OpacityMask>
</Border>
<!-- ContentPresenter for the header -->

Loading…
Cancel
Save