From 306c0454935d400465c397debf024f4c5b82ed5c Mon Sep 17 00:00:00 2001 From: Steven Kirk Date: Thu, 1 Dec 2022 22:38:19 +0100 Subject: [PATCH] Reinstate some commented-out code. --- src/Avalonia.Controls/ComboBox.cs | 17 ++++++++--------- src/Avalonia.Controls/ItemsControl.cs | 3 +-- src/Avalonia.Controls/MenuBase.cs | 11 +---------- 3 files changed, 10 insertions(+), 21 deletions(-) diff --git a/src/Avalonia.Controls/ComboBox.cs b/src/Avalonia.Controls/ComboBox.cs index e6af255c29..a573a9d887 100644 --- a/src/Avalonia.Controls/ComboBox.cs +++ b/src/Avalonia.Controls/ComboBox.cs @@ -440,15 +440,14 @@ namespace Avalonia.Controls private void SelectFocusedItem() { - throw new NotImplementedException(); - ////foreach (ItemContainerInfo dropdownItem in ItemContainerGenerator.Containers) - ////{ - //// if (dropdownItem.ContainerControl.IsFocused) - //// { - //// SelectedIndex = dropdownItem.Index; - //// break; - //// } - ////} + foreach (var dropdownItem in GetRealizedContainers()) + { + if (dropdownItem.IsFocused) + { + SelectedIndex = IndexFromContainer(dropdownItem); + break; + } + } } private void SelectNext() diff --git a/src/Avalonia.Controls/ItemsControl.cs b/src/Avalonia.Controls/ItemsControl.cs index 31f8f31875..e07eea57ef 100644 --- a/src/Avalonia.Controls/ItemsControl.cs +++ b/src/Avalonia.Controls/ItemsControl.cs @@ -419,8 +419,7 @@ namespace Avalonia.Controls } else if (change.Property == ItemContainerThemeProperty && _itemContainerGenerator is not null) { - throw new NotImplementedException(); - ////_itemContainerGenerator.ItemContainerTheme = change.GetNewValue(); + RefreshContainers(); } else if (change.Property == ItemTemplateProperty) { diff --git a/src/Avalonia.Controls/MenuBase.cs b/src/Avalonia.Controls/MenuBase.cs index 3b211d4cc7..3bbd5b7de4 100644 --- a/src/Avalonia.Controls/MenuBase.cs +++ b/src/Avalonia.Controls/MenuBase.cs @@ -95,16 +95,7 @@ namespace Avalonia.Controls } /// - IEnumerable IMenuElement.SubItems - { - get - { - throw new NotImplementedException(); - ////return ItemContainerGenerator.Containers - //// .Select(x => x.ContainerControl) - //// .OfType(); - } - } + IEnumerable IMenuElement.SubItems => GetRealizedContainers().OfType(); /// /// Gets the interaction handler for the menu.