diff --git a/src/Avalonia/HandyControlDemo_Avalonia/Data/DemoInfo.json b/src/Avalonia/HandyControlDemo_Avalonia/Data/DemoInfo.json index ca4199f2..a9998037 100644 --- a/src/Avalonia/HandyControlDemo_Avalonia/Data/DemoInfo.json +++ b/src/Avalonia/HandyControlDemo_Avalonia/Data/DemoInfo.json @@ -15,6 +15,7 @@ [ "TextBlock", "TextBlockDemo", "Brush.TextBlock", "", "" ], [ "NumericUpDown", "NumericUpDownDemo", "Brush.NumericListBox", "", "" ], [ "TextBox", "TextBoxDemo", "Brush.TextBox", "", "" ], + [ "AutoCompleteBox", "AutoCompleteBoxDemo", "Brush.AutoComplete", "", "" ], [ "ComboBox", "ComboBoxDemo", "Brush.ComboBox", "", "" ], [ "Expander", "ExpanderDemo", "Brush.Expander", "", "" ], [ "ProgressBar", "NativeProgressBarDemo", "Brush.ProgressBar", "", "" ], @@ -24,7 +25,7 @@ [ "ListBox", "ListBoxDemo", "Brush.ListBox", "", "" ], [ "Menu", "MenuDemo", "Brush.ContextMenu", "", "" ], [ "Border", "BorderDemo", "Brush.BorderElement", "", "" ], - [ "Label", "LabelDemo", "Brush.Label", "", "" ], + [ "Label", "LabelDemo", "Brush.Label", "", "" ] ] }, { diff --git a/src/Avalonia/HandyControlDemo_Avalonia/UserControl/Styles/AutoCompleteBoxDemo.axaml b/src/Avalonia/HandyControlDemo_Avalonia/UserControl/Styles/AutoCompleteBoxDemo.axaml new file mode 100644 index 00000000..22686e93 --- /dev/null +++ b/src/Avalonia/HandyControlDemo_Avalonia/UserControl/Styles/AutoCompleteBoxDemo.axaml @@ -0,0 +1,131 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/Avalonia/HandyControlDemo_Avalonia/UserControl/Styles/AutoCompleteBoxDemo.axaml.cs b/src/Avalonia/HandyControlDemo_Avalonia/UserControl/Styles/AutoCompleteBoxDemo.axaml.cs new file mode 100644 index 00000000..f9383e70 --- /dev/null +++ b/src/Avalonia/HandyControlDemo_Avalonia/UserControl/Styles/AutoCompleteBoxDemo.axaml.cs @@ -0,0 +1,9 @@ +namespace HandyControlDemo.UserControl; + +public partial class AutoCompleteBoxDemo : Avalonia.Controls.UserControl +{ + public AutoCompleteBoxDemo() + { + InitializeComponent(); + } +} diff --git a/src/Avalonia/HandyControl_Avalonia/Controls/Attach/InfoElement.cs b/src/Avalonia/HandyControl_Avalonia/Controls/Attach/InfoElement.cs index 20b2e535..53ea4c72 100644 --- a/src/Avalonia/HandyControl_Avalonia/Controls/Attach/InfoElement.cs +++ b/src/Avalonia/HandyControl_Avalonia/Controls/Attach/InfoElement.cs @@ -54,7 +54,7 @@ public class InfoElement public static string GetRegexPattern(AvaloniaObject element) => element.GetValue(RegexPatternProperty); public static readonly AttachedProperty ShowClearButtonProperty = - AvaloniaProperty.RegisterAttached("ShowClearButton"); + AvaloniaProperty.RegisterAttached("ShowClearButton", inherits: true); public static void SetShowClearButton(AvaloniaObject element, bool value) => element.SetValue(ShowClearButtonProperty, value); diff --git a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/AutoCompleteBox.axaml b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/AutoCompleteBox.axaml new file mode 100644 index 00000000..acc05f8c --- /dev/null +++ b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/AutoCompleteBox.axaml @@ -0,0 +1,258 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/MergedStyles.axaml b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/MergedStyles.axaml index 9dd1f06b..8868b28b 100644 --- a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/MergedStyles.axaml +++ b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/MergedStyles.axaml @@ -48,6 +48,7 @@ + diff --git a/src/Shared/HandyControl_Shared/Controls/Attach/InfoElement.cs b/src/Shared/HandyControl_Shared/Controls/Attach/InfoElement.cs index ac78ab94..77299b16 100644 --- a/src/Shared/HandyControl_Shared/Controls/Attach/InfoElement.cs +++ b/src/Shared/HandyControl_Shared/Controls/Attach/InfoElement.cs @@ -91,7 +91,8 @@ public class InfoElement : TitleElement => (string) element.GetValue(RegexPatternProperty); public static readonly DependencyProperty ShowClearButtonProperty = DependencyProperty.RegisterAttached( - "ShowClearButton", typeof(bool), typeof(InfoElement), new PropertyMetadata(ValueBoxes.FalseBox)); + "ShowClearButton", typeof(bool), typeof(InfoElement), + new FrameworkPropertyMetadata(ValueBoxes.FalseBox, FrameworkPropertyMetadataOptions.Inherits)); public static void SetShowClearButton(DependencyObject element, bool value) => element.SetValue(ShowClearButtonProperty, ValueBoxes.BooleanBox(value));