From 16ebfb5be9672c5d4068c5d6b6ca135b6f1b84db Mon Sep 17 00:00:00 2001 From: Andrey Kunchev Date: Tue, 20 Nov 2018 00:55:46 +0200 Subject: [PATCH] focus DropDown after DropDown popup closed, otherwise focus is unpredicatable --- src/Avalonia.Controls/DropDown.cs | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/Avalonia.Controls/DropDown.cs b/src/Avalonia.Controls/DropDown.cs index c941f92449..847db8a089 100644 --- a/src/Avalonia.Controls/DropDown.cs +++ b/src/Avalonia.Controls/DropDown.cs @@ -179,10 +179,22 @@ namespace Avalonia.Controls if (_popup != null) { _popup.Opened -= PopupOpened; + _popup.Closed -= PopupClosed; } _popup = e.NameScope.Get("PART_Popup"); _popup.Opened += PopupOpened; + _popup.Closed += PopupClosed; + + base.OnTemplateApplied(e); + } + + private void PopupClosed(object sender, EventArgs e) + { + if (Focusable) + { + Focus(); + } } private void PopupOpened(object sender, EventArgs e)