public static Collection <object> GetSelectedItems(IntPtr controlHandle)
        {
            if (!CanSelectMultiple(controlHandle))
            {
                return(null);
            }

            try
            {
                AutomationElement           control = CommonUIAPatternHelpers.Prologue(SelectionPattern.Pattern, controlHandle);
                AutomationElementCollection convRet = SelectionItemPatternHelper.GetSelectedItems(control);

                Collection <object> ret = InternalUtilities.AutomationCollToObjectList(convRet);
                LogController.ReceiveLogMessage(new LogMessage("List selected items: ", ret));

                return(ret);
            }
            catch (InvalidOperationException err)
            {
                throw new ProdOperationException(err.Message, err);
            }
            catch (ElementNotAvailableException err)
            {
                throw new ProdOperationException(err.Message, err);
            }
            catch (ArgumentException err)
            {
                throw new ProdOperationException(err.Message, err);
            }
        }