Forráskód Böngészése

Use OnApplyTemplate instead of OnTemplateApplied.

- More similar to WPF API
- Less bug-prone (see #3744)

`OnTemplateApplied` still exists, but is deprecated and does nothing.
Steven Kirk 5 éve
szülő
commit
2fcde9e34d

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

@@ -2245,7 +2245,7 @@ namespace Avalonia.Controls
         /// Builds the visual tree for the column header when a new template is applied.
         /// </summary>
         //TODO Validation UI
-        protected override void OnTemplateApplied(TemplateAppliedEventArgs e)
+        protected override void OnApplyTemplate(TemplateAppliedEventArgs e)
         {
             // The template has changed, so we need to refresh the visuals
             _measured = false;

+ 1 - 3
src/Avalonia.Controls.DataGrid/DataGridCell.cs

@@ -121,10 +121,8 @@ namespace Avalonia.Controls
         /// <summary>
         /// Builds the visual tree for the cell control when a new template is applied.
         /// </summary>
-        protected override void OnTemplateApplied(TemplateAppliedEventArgs e)
+        protected override void OnApplyTemplate(TemplateAppliedEventArgs e)
         {
-            base.OnTemplateApplied(e);
-
             UpdatePseudoClasses();
             _rightGridLine = e.NameScope.Find<Rectangle>(DATAGRIDCELL_elementRightGridLine);
             if (_rightGridLine != null && OwningColumn == null)

+ 1 - 3
src/Avalonia.Controls.DataGrid/DataGridRow.cs

@@ -536,10 +536,8 @@ namespace Avalonia.Controls
         /// <summary>
         /// Builds the visual tree for the column header when a new template is applied.
         /// </summary>
-        protected override void OnTemplateApplied(TemplateAppliedEventArgs e)
+        protected override void OnApplyTemplate(TemplateAppliedEventArgs e)
         {
-            base.OnTemplateApplied(e);
-
             RootElement = e.NameScope.Find<Panel>(DATAGRIDROW_elementRoot);
             if (RootElement != null)
             {

+ 1 - 3
src/Avalonia.Controls.DataGrid/DataGridRowGroupHeader.cs

@@ -168,7 +168,7 @@ namespace Avalonia.Controls
 
         private IDisposable _expanderButtonSubscription;
 
-        protected override void OnTemplateApplied(TemplateAppliedEventArgs e)
+        protected override void OnApplyTemplate(TemplateAppliedEventArgs e)
         {
             _rootElement = e.NameScope.Find<Panel>(DataGridRow.DATAGRIDROW_elementRoot);
 
@@ -199,8 +199,6 @@ namespace Avalonia.Controls
             _itemCountElement = e.NameScope.Find<TextBlock>(DATAGRIDROWGROUPHEADER_itemCountElement);
             _propertyNameElement = e.NameScope.Find<TextBlock>(DATAGRIDROWGROUPHEADER_propertyNameElement);
             UpdateTitleElements();
-
-            base.OnTemplateApplied(e);
         }
 
         internal void ApplyHeaderStatus()

+ 1 - 3
src/Avalonia.Controls.DataGrid/DataGridRowHeader.cs

@@ -94,10 +94,8 @@ namespace Avalonia.Controls.Primitives
         /// <summary>
         /// Builds the visual tree for the row header when a new template is applied. 
         /// </summary>
-        protected override void OnTemplateApplied(TemplateAppliedEventArgs e)
+        protected override void OnApplyTemplate(TemplateAppliedEventArgs e)
         {
-            base.OnTemplateApplied(e);
-
             _rootElement = e.NameScope.Find<Control>(DATAGRIDROWHEADER_elementRootName);
             if (_rootElement != null)
             {

+ 2 - 2
src/Avalonia.Controls/AutoCompleteBox.cs

@@ -1212,7 +1212,7 @@ namespace Avalonia.Controls
         /// <see cref="T:Avalonia.Controls.AutoCompleteBox" /> control
         /// when a new template is applied.
         /// </summary>
-        protected override void OnTemplateApplied(TemplateAppliedEventArgs e)
+        protected override void OnApplyTemplate(TemplateAppliedEventArgs e)
         {
 
             if (DropDownPopup != null)
@@ -1240,7 +1240,7 @@ namespace Avalonia.Controls
                 OpeningDropDown(false);
             }
 
-            base.OnTemplateApplied(e);
+            base.OnApplyTemplate(e);
         }
 
         /// <summary>

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

@@ -121,7 +121,7 @@ namespace Avalonia.Controls
         }
 
         /// <inheritdoc />
-        protected override void OnTemplateApplied(TemplateAppliedEventArgs e)
+        protected override void OnApplyTemplate(TemplateAppliedEventArgs e)
         {
             IncreaseButton = e.NameScope.Find<Button>("PART_IncreaseButton");
             DecreaseButton = e.NameScope.Find<Button>("PART_DecreaseButton");

+ 1 - 3
src/Avalonia.Controls/Calendar/Calendar.cs

@@ -2079,10 +2079,8 @@ namespace Avalonia.Controls
         /// <see cref="T:System.Windows.Controls.Calendar" /> when a new
         /// template is applied.
         /// </summary>
-        protected override void OnTemplateApplied(TemplateAppliedEventArgs e)
+        protected override void OnApplyTemplate(TemplateAppliedEventArgs e)
         {
-            base.OnTemplateApplied(e);
-
             Root = e.NameScope.Find<Panel>(PART_ElementRoot);
 
             SelectedMonth = DisplayDate;

+ 1 - 2
src/Avalonia.Controls/Calendar/CalendarButton.cs

@@ -98,9 +98,8 @@ namespace Avalonia.Controls.Primitives
         /// <see cref="T:System.Windows.Controls.Primitives.CalendarButton" />
         /// when a new template is applied.
         /// </summary>
-        protected override void OnTemplateApplied(TemplateAppliedEventArgs e)
+        protected override void OnApplyTemplate(TemplateAppliedEventArgs e)
         {
-            base.OnTemplateApplied(e);
             SetPseudoClasses();
         }
         

+ 2 - 2
src/Avalonia.Controls/Calendar/CalendarDayButton.cs

@@ -150,11 +150,11 @@ namespace Avalonia.Controls.Primitives
             }
         }
 
-        protected override void OnTemplateApplied(TemplateAppliedEventArgs e)
+        protected override void OnApplyTemplate(TemplateAppliedEventArgs e)
         {
-            base.OnTemplateApplied(e);
             SetPseudoClasses();
         }
+
         private void SetPseudoClasses()
         {
             if (_ignoringMouseOverState)

+ 1 - 3
src/Avalonia.Controls/Calendar/CalendarItem.cs

@@ -268,10 +268,8 @@ namespace Avalonia.Controls.Primitives
         /// <see cref="T:System.Windows.Controls.Primitives.CalendarItem" />
         /// when a new template is applied.
         /// </summary>
-        protected override void OnTemplateApplied(TemplateAppliedEventArgs e)
+        protected override void OnApplyTemplate(TemplateAppliedEventArgs e)
         {
-            base.OnTemplateApplied(e);
-            
             HeaderButton = e.NameScope.Find<Button>(PART_ElementHeaderButton);
             PreviousButton = e.NameScope.Find<Button>(PART_ElementPreviousButton);
             NextButton = e.NameScope.Find<Button>(PART_ElementNextButton);

+ 1 - 3
src/Avalonia.Controls/Calendar/DatePicker.cs

@@ -413,7 +413,7 @@ namespace Avalonia.Controls
             DisplayDate = DateTime.Today;
         }
 
-        protected override void OnTemplateApplied(TemplateAppliedEventArgs e)
+        protected override void OnApplyTemplate(TemplateAppliedEventArgs e)
         {
             if (_calendar != null)
             {
@@ -508,8 +508,6 @@ namespace Avalonia.Controls
                     SetSelectedDate();
                 }
             }
-
-            base.OnTemplateApplied(e);
         }
 
         protected override void OnPropertyChanged<T>(

+ 1 - 3
src/Avalonia.Controls/ComboBox.cs

@@ -219,7 +219,7 @@ namespace Avalonia.Controls
         }
 
         /// <inheritdoc/>
-        protected override void OnTemplateApplied(TemplateAppliedEventArgs e)
+        protected override void OnApplyTemplate(TemplateAppliedEventArgs e)
         {
             if (_popup != null)
             {
@@ -230,8 +230,6 @@ namespace Avalonia.Controls
             _popup = e.NameScope.Get<Popup>("PART_Popup");
             _popup.Opened += PopupOpened;
             _popup.Closed += PopupClosed;
-
-            base.OnTemplateApplied(e);
         }
 
         internal void ItemFocused(ComboBoxItem dropDownItem)

+ 1 - 2
src/Avalonia.Controls/ListBox.cs

@@ -146,10 +146,9 @@ namespace Avalonia.Controls
             }
         }
 
-        protected override void OnTemplateApplied(TemplateAppliedEventArgs e)
+        protected override void OnApplyTemplate(TemplateAppliedEventArgs e)
         {
             Scroll = e.NameScope.Find<IScrollable>("PART_ScrollViewer");
-            base.OnTemplateApplied(e);
         }
     }
 }

+ 1 - 3
src/Avalonia.Controls/MenuItem.cs

@@ -417,10 +417,8 @@ namespace Avalonia.Controls
         }
 
         /// <inheritdoc/>
-        protected override void OnTemplateApplied(TemplateAppliedEventArgs e)
+        protected override void OnApplyTemplate(TemplateAppliedEventArgs e)
         {
-            base.OnTemplateApplied(e);
-
             if (_popup != null)
             {
                 _popup.Opened -= PopupOpened;

+ 1 - 3
src/Avalonia.Controls/Notifications/WindowNotificationManager.cs

@@ -77,10 +77,8 @@ namespace Avalonia.Controls.Notifications
         }
 
         /// <inheritdoc/>
-        protected override void OnTemplateApplied(TemplateAppliedEventArgs e)
+        protected override void OnApplyTemplate(TemplateAppliedEventArgs e)
         {
-            base.OnTemplateApplied(e);
-
             var itemsControl = e.NameScope.Find<Panel>("PART_Items");
             _items = itemsControl?.Children;
         }

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

@@ -295,7 +295,7 @@ namespace Avalonia.Controls
         }
 
         /// <inheritdoc />
-        protected override void OnTemplateApplied(TemplateAppliedEventArgs e)
+        protected override void OnApplyTemplate(TemplateAppliedEventArgs e)
         {
             if (TextBox != null)
             {

+ 1 - 3
src/Avalonia.Controls/Primitives/ScrollBar.cs

@@ -147,10 +147,8 @@ namespace Avalonia.Controls.Primitives
             }
         }
 
-        protected override void OnTemplateApplied(TemplateAppliedEventArgs e)
+        protected override void OnApplyTemplate(TemplateAppliedEventArgs e)
         {
-            base.OnTemplateApplied(e);
-
             if (_lineUpButton != null)
             {
                 _lineUpButton.Click -= LineUpClick;

+ 8 - 2
src/Avalonia.Controls/Primitives/TemplatedControl.cs

@@ -263,7 +263,9 @@ namespace Avalonia.Controls.Primitives
                     if (nameScope == null)
                         nameScope = new NameScope();
 
-                    OnTemplateApplied(new TemplateAppliedEventArgs(nameScope));
+                    var e = new TemplateAppliedEventArgs(nameScope);
+                    OnApplyTemplate(e);
+                    RaiseEvent(e);
                 }
 
                 _appliedTemplate = template;
@@ -306,13 +308,17 @@ namespace Avalonia.Controls.Primitives
             base.OnDetachedFromLogicalTree(e);
         }
 
+        protected virtual void OnApplyTemplate(TemplateAppliedEventArgs e)
+        {
+        }
+
         /// <summary>
         /// Called when the control's template is applied.
         /// </summary>
         /// <param name="e">The event args.</param>
+        [Obsolete("Use OnApplyTemplate")]
         protected virtual void OnTemplateApplied(TemplateAppliedEventArgs e)
         {
-            RaiseEvent(e);
         }
 
         /// <summary>

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

@@ -102,7 +102,7 @@ namespace Avalonia.Controls
         }
 
         /// <inheritdoc/>
-        protected override void OnTemplateApplied(TemplateAppliedEventArgs e)
+        protected override void OnApplyTemplate(TemplateAppliedEventArgs e)
         {
             _indicator = e.NameScope.Get<Border>("PART_Indicator");
 

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

@@ -82,7 +82,7 @@ namespace Avalonia.Controls
         }
 
         /// <inheritdoc/>
-        protected override void OnTemplateApplied(TemplateAppliedEventArgs e)
+        protected override void OnApplyTemplate(TemplateAppliedEventArgs e)
         {
             if (_decreaseButton != null)
             {

+ 1 - 3
src/Avalonia.Controls/TabControl.cs

@@ -217,10 +217,8 @@ namespace Avalonia.Controls
             return new TabItemContainerGenerator(this);
         }
 
-        protected override void OnTemplateApplied(TemplateAppliedEventArgs e)
+        protected override void OnApplyTemplate(TemplateAppliedEventArgs e)
         {
-            base.OnTemplateApplied(e);
-
             ItemsPresenterPart = e.NameScope.Get<ItemsPresenter>("PART_ItemsPresenter");
         }
 

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

@@ -341,7 +341,7 @@ namespace Avalonia.Controls
             set { SetAndRaise(NewLineProperty, ref _newLine, value); }
         }
 
-        protected override void OnTemplateApplied(TemplateAppliedEventArgs e)
+        protected override void OnApplyTemplate(TemplateAppliedEventArgs e)
         {
             _presenter = e.NameScope.Get<TextPresenter>("PART_TextPresenter");
 

+ 1 - 2
src/Avalonia.Controls/TreeViewItem.cs

@@ -162,9 +162,8 @@ namespace Avalonia.Controls
             // Don't call base.OnKeyDown - let events bubble up to containing TreeView.
         }
 
-        protected override void OnTemplateApplied(TemplateAppliedEventArgs e)
+        protected override void OnApplyTemplate(TemplateAppliedEventArgs e)
         {
-            base.OnTemplateApplied(e);
             _header = e.NameScope.Find<IControl>("PART_Header");
         }
 

+ 1 - 1
tests/Avalonia.Controls.UnitTests/Primitives/PopupRootTests.cs

@@ -352,7 +352,7 @@ namespace Avalonia.Controls.UnitTests.Primitives
                 set => SetValue(PopupContentProperty, value);
             }
 
-            protected override void OnTemplateApplied(TemplateAppliedEventArgs e)
+            protected override void OnApplyTemplate(TemplateAppliedEventArgs e)
             {
                 Popup = (Popup)this.GetVisualChildren().Single();
             }

+ 1 - 2
tests/Avalonia.Controls.UnitTests/TestTemplatedControl.cs

@@ -12,9 +12,8 @@ namespace Avalonia.Controls.UnitTests
             VisualChildren.Add(visual);
         }
 
-        protected override void OnTemplateApplied(TemplateAppliedEventArgs e)
+        protected override void OnApplyTemplate(TemplateAppliedEventArgs e)
         {
-            base.OnTemplateApplied(e);
             OnTemplateAppliedCalled = true;
         }
     }