ame="el"></param>
        /// <param name="enableAction"></param>
        public void SetElement(A11yElement el, bool enableAction = false, Guid ecId = default(Guid))
        {
            if (el != null)
            {
                this.tbElement.Text = el.Glimpse;
                this.ctrlProperties.SetElement(el);
                this.ctrlPatterns.SetElement(el, enableAction);
                this.ctrlTests.SetElement(el, ecId);
            }
            else
            {
                Clear();
            }
        }

        /// <summary>
        /// Clear controls
        /// </summary>
        public void Clear()
        {
            this.tbElement.Text = null;

            this.ctrlProperties.Clear();
            this.ctrlTests.Clear();
            this.ctrlPatterns.Clear();
            this.ctrlEventMessage.Clear();
        }

        /// <summary>
        /// Label as pane
        /// </summary>
        /// <returns></returns>
        protected override AutomationPeer OnCreateAutomationPeer()
        {
            return new CustomControlOverridingAutomationPeer(this, "pane");
        }

        /// <summary>
        /// Handles checking of show all available properties
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void mniShowCoreProps_Checked(object sender, RoutedEventArgs e)
        {
            this.ctrlProperties.mniShowCorePropertiesChecked();
        }

        /// <summary>
        /// Handles unchecking of show all available properties
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void mniShowCoreProps_Unchecked(object sender, RoutedEventArgs e)
        {
            this.ctrlProperties.mniShowCorePropertiesUnchecked();
        }

        /// <summary>
        /// Open properties configuration dialog
        /// </summary>
        /// <param name="sender"></param>
        /// <param n