diff --git a/src/Shared/HandyControl_Shared/Controls/Attach/ExpanderElement.cs b/src/Shared/HandyControl_Shared/Controls/Attach/ExpanderElement.cs new file mode 100644 index 00000000..05b76f1e --- /dev/null +++ b/src/Shared/HandyControl_Shared/Controls/Attach/ExpanderElement.cs @@ -0,0 +1,37 @@ +using System.Windows; + +namespace HandyControl.Controls; + +/// +/// Header text orientation of an when is Left or Right. +/// +public enum ExpanderHeaderTextOrientation +{ + /// + /// Same as the current behavior: the whole header is rotated -90 degrees (glyphs lying on their side). + /// + Default = 0, + + /// + /// Upright vertical: characters stand upright and stack top-to-bottom. + /// + Vertical = 1, + + /// + /// Upright horizontal: a single horizontal line. + /// + Horizontal = 2 +} + +/// +/// Attached properties for . +/// +public class ExpanderElement +{ + public static readonly DependencyProperty HeaderTextOrientationProperty = DependencyProperty.RegisterAttached( + "HeaderTextOrientation", typeof(ExpanderHeaderTextOrientation), typeof(ExpanderElement), new FrameworkPropertyMetadata(ExpanderHeaderTextOrientation.Default)); + + public static void SetHeaderTextOrientation(DependencyObject element, ExpanderHeaderTextOrientation value) => element.SetValue(HeaderTextOrientationProperty, value); + + public static ExpanderHeaderTextOrientation GetHeaderTextOrientation(DependencyObject element) => (ExpanderHeaderTextOrientation) element.GetValue(HeaderTextOrientationProperty); +} diff --git a/src/Shared/HandyControl_Shared/HandyControl_Shared.projitems b/src/Shared/HandyControl_Shared/HandyControl_Shared.projitems index 2f1732d9..47744c2e 100644 --- a/src/Shared/HandyControl_Shared/HandyControl_Shared.projitems +++ b/src/Shared/HandyControl_Shared/HandyControl_Shared.projitems @@ -15,6 +15,7 @@ + diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Base/ExpanderBaseStyle.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Base/ExpanderBaseStyle.xaml index 8412b1f3..139f2ec2 100644 --- a/src/Shared/HandyControl_Shared/Themes/Styles/Base/ExpanderBaseStyle.xaml +++ b/src/Shared/HandyControl_Shared/Themes/Styles/Base/ExpanderBaseStyle.xaml @@ -19,7 +19,7 @@ - + @@ -34,6 +34,27 @@ + + + + + + + + + + + + + + + + + + + + + @@ -84,7 +105,7 @@ - + @@ -99,6 +120,27 @@ + + + + + + + + + + + + + + + + + + + + +