// </Snippet1035>

        // <Snippet104>
        ///--------------------------------------------------------------------
        /// <summary>
        /// Sets the current view of a target.
        /// </summary>
        /// <param name="multipleViewControl">
        /// The current multiple view control.
        /// </param>
        /// <param name="viewID">
        /// The view identifier from the supported views collection.
        /// </param>
        ///--------------------------------------------------------------------
        private void SetView(AutomationElement multipleViewControl, int viewID)
        {
            if (multipleViewControl == null)
            {
                throw new ArgumentNullException(
                          "AutomationElement parameter must not be null.");
            }

            // Get a MultipleViewPattern from the current control.
            MultipleViewPattern multipleViewPattern =
                GetMultipleViewPattern(multipleViewControl);

            if (multipleViewPattern != null)
            {
                try
                {
                    multipleViewPattern.SetCurrentView(viewID);
                }
                // viewID is not a member of the supported views collection
                catch (ArgumentException)
                {
                    // TO DO: error handling
                }
            }
        }
예제 #2
0
        public void SetErrorViewTest()
        {
            var oldView = pattern.Current.CurrentView;

            AssertRaises <ArgumentException> (() => pattern.SetCurrentView(123456), "Set invalid viewId");
            var newView = pattern.Current.CurrentView;

            Assert.AreEqual(newView, oldView, "Current view isn't changed");
        }
예제 #3
0
        public void SetCurrentView(int viewId, bool log)
        {
            if (log)
            {
                procedureLogger.Action(string.Format("Set current view to {0}.", GetViewName(viewId)));
            }

            MultipleViewPattern mvp = (MultipleViewPattern)element.GetCurrentPattern(MultipleViewPattern.Pattern);

            mvp.SetCurrentView(viewId);
        }
예제 #4
0
 public void NotEnabledTest()
 {
     RunCommand("disable list view");
     listView1Element = testFormElement.FindFirst(TreeScope.Children,
                                                  new PropertyCondition(AEIds.NameProperty, "listView1"));
     Assert.IsNotNull(listView1Element);
     pattern = (MultipleViewPattern)listView1Element.GetCurrentPattern(MultipleViewPattern.Pattern);
     // We should expect and ElementNotEnabledException here
     // But since on Windows Winforms there isn't expcetion fired, then we also assert no exception here
     pattern.SetCurrentView(1);
     RunCommand("enable list view");
     pattern = (MultipleViewPattern)listView1Element.GetCurrentPattern(MultipleViewPattern.Pattern);
 }
예제 #5
0
        public void SetCurrentView(int viewId, bool log)
        {
            if (!this.SupportedViews.Contains(viewId))
            {
                throw new ArgumentOutOfRangeException();
            }

            if (log)
            {
                procedureLogger.Action(string.Format("Set current view to {0}.", GetViewName(viewId)));
            }

            MultipleViewPattern mvp = (MultipleViewPattern)element.GetCurrentPattern(MultipleViewPattern.Pattern);

            mvp.SetCurrentView(viewId);
        }
        /// <summary>
        /// Sets the current view.
        /// </summary>
        /// <param name="control">The control.</param>
        /// <param name="viewId">A control-specific view identifier.</param>
        internal void SetCurrentView(AutomationElement control, int viewId)
        {
            MultipleViewPattern pattern = (MultipleViewPattern)CommonUIAPatternHelpers.CheckPatternSupport(MultipleViewPattern.Pattern, control);

            pattern.SetCurrentView(viewId);
        }