Преглед изворни кода

Added user control styling support

Wiesław Šoltés пре 7 година
родитељ
комит
c3ec5c543f

+ 1 - 1
src/Avalonia.Controls/UserControl.cs

@@ -28,7 +28,7 @@ namespace Avalonia.Controls
         }
 
         /// <inheritdoc/>
-        Type IStyleable.StyleKey => typeof(ContentControl);
+        Type IStyleable.StyleKey => typeof(UserControl);
 
         /// <inheritdoc/>
         void INameScope.Register(string name, object element)

+ 1 - 0
src/Avalonia.Themes.Default/DefaultTheme.xaml

@@ -35,6 +35,7 @@
   <StyleInclude Source="resm:Avalonia.Themes.Default.Expander.xaml?assembly=Avalonia.Themes.Default"/>
   <StyleInclude Source="resm:Avalonia.Themes.Default.TreeView.xaml?assembly=Avalonia.Themes.Default"/>
   <StyleInclude Source="resm:Avalonia.Themes.Default.TreeViewItem.xaml?assembly=Avalonia.Themes.Default"/>
+  <StyleInclude Source="resm:Avalonia.Themes.Default.UserControl.xaml?assembly=Avalonia.Themes.Default"/>
   <StyleInclude Source="resm:Avalonia.Themes.Default.Window.xaml?assembly=Avalonia.Themes.Default"/>
   <StyleInclude Source="resm:Avalonia.Themes.Default.EmbeddableControlRoot.xaml?assembly=Avalonia.Themes.Default"/>
   <StyleInclude Source="resm:Avalonia.Themes.Default.CalendarButton.xaml?assembly=Avalonia.Themes.Default"/>

+ 15 - 0
src/Avalonia.Themes.Default/UserControl.xaml

@@ -0,0 +1,15 @@
+<Style xmlns="https://github.com/avaloniaui" Selector="UserControl">
+  <Setter Property="Template">
+    <ControlTemplate>
+      <ContentPresenter Name="PART_ContentPresenter"
+                        Background="{TemplateBinding Background}"
+                        BorderBrush="{TemplateBinding BorderBrush}"
+                        BorderThickness="{TemplateBinding BorderThickness}"
+                        ContentTemplate="{TemplateBinding ContentTemplate}"
+                        Content="{TemplateBinding Content}"
+                        Padding="{TemplateBinding Padding}"
+                        VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"
+                        HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}"/>
+    </ControlTemplate>
+  </Setter>
+</Style>