diff --git a/src/Avalonia.Controls/ListBox.cs b/src/Avalonia.Controls/ListBox.cs index 449ca18465..112cf61ce7 100644 --- a/src/Avalonia.Controls/ListBox.cs +++ b/src/Avalonia.Controls/ListBox.cs @@ -145,8 +145,8 @@ namespace Avalonia.Controls protected override void OnTemplateApplied(TemplateAppliedEventArgs e) { - base.OnTemplateApplied(e); Scroll = e.NameScope.Find("PART_ScrollViewer"); + base.OnTemplateApplied(e); } } } diff --git a/tests/Avalonia.Controls.UnitTests/ListBoxTests.cs b/tests/Avalonia.Controls.UnitTests/ListBoxTests.cs index 9a459328aa..df2508a3ed 100644 --- a/tests/Avalonia.Controls.UnitTests/ListBoxTests.cs +++ b/tests/Avalonia.Controls.UnitTests/ListBoxTests.cs @@ -47,6 +47,26 @@ namespace Avalonia.Controls.UnitTests Assert.IsType(target.Presenter); } + [Fact] + public void ListBox_Should_Find_Scrollviewer_In_Template() + { + var target = new ListBox + { + Template = ListBoxTemplate(), + }; + + ScrollViewer viewer = null; + + target.TemplateApplied += (sender, e) => + { + viewer = target.Scroll as ScrollViewer; + }; + + Prepare(target); + + Assert.NotNull(viewer); + } + [Fact] public void ListBoxItem_Containers_Should_Be_Generated() {