private static void BeginSetFocus([NotNull] this ItemsControl selector, [CanBeNull] object selectedItem)
        {
            selector.BeginInvoke(() =>
            {
                var container = selector.ItemContainerGenerator.ContainerFromItem(selectedItem) as FrameworkElement;
                if (container == null)
                {
                    return;
                }

                var child = container.VisualDescendantsAndSelf().OfType <UIElement>().FirstOrDefault(item => item.Focusable);

                child?.Focus();
            });
        }