Browse Source

Use VisualBrush for GroupBox (#19372)

pull/19383/head
Tim Miller 1 year 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}" CornerRadius="{TemplateBinding CornerRadius}"
BorderThickness="{TemplateBinding BorderThickness}" BorderThickness="{TemplateBinding BorderThickness}"
BorderBrush="{TemplateBinding BorderBrush}"> BorderBrush="{TemplateBinding BorderBrush}">
<Border.Clip> <Border.OpacityMask>
<CombinedGeometry GeometryCombineMode="Exclude"> <VisualBrush>
<CombinedGeometry.Geometry1> <VisualBrush.Visual>
<RectangleGeometry Rect="{Binding #RootGrid.Bounds}" /> <Canvas Background="Transparent">
</CombinedGeometry.Geometry1> <Rectangle Fill="Transparent"
<CombinedGeometry.Geometry2> Width="{Binding #Header.Bounds.Width}"
<RectangleGeometry Rect="{Binding #Header.Bounds}" /> Height="{Binding #Header.Bounds.Height}"
</CombinedGeometry.Geometry2> Canvas.Left="{Binding #Header.Bounds.X}"
</CombinedGeometry> Canvas.Top="{Binding #Header.Bounds.Y}"/>
</Border.Clip> </Canvas>
</VisualBrush.Visual>
</VisualBrush>
</Border.OpacityMask>
</Border> </Border>
<!-- ContentPresenter for the header --> <!-- ContentPresenter for the header -->

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

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

Loading…
Cancel
Save