コード例 #1
0
        internal static ITreeViewItem GetWindowsElementTreeItem(ElementInfo EI)
        {
            string elementControlType = ((WindowsDriver)EI.WindowExplorer).mUIAutomationHelper.GetElementControlType(EI.ElementObject);
            string elmentClass        = ((WindowsDriver)EI.WindowExplorer).mUIAutomationHelper.GetControlPropertyValue(EI.ElementObject, "ClassName");

            if (elementControlType == "button")
            {
                WindowsButtonTreeItem BTI = new WindowsButtonTreeItem();
                BTI.UIAElementInfo = (UIAElementInfo)EI;
                BTI.UIAElementInfo.ElementObject = EI.ElementObject;
                return(BTI);
            }
            else if (elementControlType == "Edit Box")
            {
                WindowsTextBoxTreeItem TBTI = new WindowsTextBoxTreeItem();
                TBTI.UIAElementInfo.ElementObject = EI.ElementObject;
                TBTI.UIAElementInfo = (UIAElementInfo)EI;
                return(TBTI);
            }
            //Label
            else if (elementControlType == "text")
            {
                WindowsLabelTreeItem WTBTI = new WindowsLabelTreeItem();
                WTBTI.UIAElementInfo.ElementObject = EI.ElementObject;
                WTBTI.UIAElementInfo = (UIAElementInfo)EI;
                return(WTBTI);
            }
            //Text box
            else if (elementControlType == "edit")
            {
                WindowsTextBoxTreeItem WTBTI = new WindowsTextBoxTreeItem();
                WTBTI.UIAElementInfo.ElementObject = EI.ElementObject;
                WTBTI.UIAElementInfo = (UIAElementInfo)EI;
                return(WTBTI);
            }

            else if (elementControlType == "label")
            {
                WindowsLabelTreeItem WLTI = new WindowsLabelTreeItem();
                WLTI.UIAElementInfo.ElementObject = EI.ElementObject;
                WLTI.UIAElementInfo = (UIAElementInfo)EI;
                return(WLTI);
            }
            else if (elementControlType == "combo box")
            {
                WindowsComboBoxTreeItem CBTI = new WindowsComboBoxTreeItem();
                CBTI.UIAElementInfo.ElementObject = EI.ElementObject;
                CBTI.UIAElementInfo = (UIAElementInfo)EI;
                return(CBTI);
            }
            else if (elementControlType == "tab item")
            {
                WindowsTabItemTreeItem TITI = new WindowsTabItemTreeItem();
                TITI.UIAElementInfo.ElementObject = EI.ElementObject;
                TITI.UIAElementInfo = (UIAElementInfo)EI;
                return(TITI);
            }
            //TODO: For  Grid rows control type is item.This will work, but can be enhanced to use Grid patterns
            else if (elementControlType == "item")
            {
                WindowsTabItemTreeItem ITI = new WindowsTabItemTreeItem();
                ITI.UIAElementInfo.ElementObject = EI.ElementObject;
                ITI.UIAElementInfo = (UIAElementInfo)EI;
                return(ITI);
            }

            else if (elementControlType == "menu item")
            {
                WindowsMenuItemTreeItem MBTI = new WindowsMenuItemTreeItem();
                MBTI.UIAElementInfo.ElementObject = EI.ElementObject;
                MBTI.UIAElementInfo = (UIAElementInfo)EI;
                return(MBTI);
            }
            else if (elementControlType == "pane" && elmentClass == "SysDateTimePick32")
            {
                WindowsDatePickerTreeItem DPTI = new WindowsDatePickerTreeItem();
                DPTI.UIAElementInfo.ElementObject = EI.ElementObject;
                DPTI.UIAElementInfo = (UIAElementInfo)EI;
                return(DPTI);
            }
            //// TODO: Remove Dependency on class name. Find a generic way
            else if (elementControlType == "pane" && elmentClass == "PBTabControl32_100")
            {
                WindowsTabItemTreeItem TTI = new WindowsTabItemTreeItem();
                TTI.UIAElementInfo.ElementObject = EI.ElementObject;
                TTI.UIAElementInfo = (UIAElementInfo)EI;
                return(TTI);
            }
            else if (elementControlType == "pane" && elmentClass == "Internet Explorer_Server")
            {
                WindowsBrowserTreeItem TTI = new WindowsBrowserTreeItem();
                TTI.UIAElementInfo.ElementObject = EI.ElementObject;
                TTI.UIAElementInfo = (UIAElementInfo)EI;
                return(TTI);
            }
            else if (elementControlType == "menu bar")
            {
                WindowsMenuBarTreeItem MBTI = new WindowsMenuBarTreeItem();
                MBTI.UIAElementInfo.ElementObject = EI.ElementObject;
                MBTI.UIAElementInfo = (UIAElementInfo)EI;
                return(MBTI);
            }
            else if (elementControlType == "menu item")
            {
                WindowsMenuItemTreeItem MBTI = new WindowsMenuItemTreeItem();
                MBTI.UIAElementInfo.ElementObject = EI.ElementObject;
                MBTI.UIAElementInfo = (UIAElementInfo)EI;
                return(MBTI);
            }
            else if (elementControlType == "check box")
            {
                WindowsCheckBoxTreeItem CBTI = new WindowsCheckBoxTreeItem();
                CBTI.UIAElementInfo.ElementObject = EI.ElementObject;
                CBTI.UIAElementInfo = (UIAElementInfo)EI;
                return(CBTI);
            }
            else if (elementControlType == "radio button")
            {
                WindowsRadioButtonTreeItem RBTI = new WindowsRadioButtonTreeItem();
                RBTI.UIAElementInfo.ElementObject = EI.ElementObject;
                RBTI.UIAElementInfo = (UIAElementInfo)EI;
                return(RBTI);
            }
            else if (elementControlType == "list")
            {
                WindowsListBoxTreeItem LTI = new WindowsListBoxTreeItem();
                LTI.UIAElementInfo.ElementObject = EI.ElementObject;
                LTI.UIAElementInfo = (UIAElementInfo)EI;
                return(LTI);
            }
            else if (elementControlType == "list item")
            {
                WindowsListItemTreeItem LITI = new WindowsListItemTreeItem();
                LITI.UIAElementInfo.ElementObject = EI.ElementObject;
                LITI.UIAElementInfo = (UIAElementInfo)EI;
                return(LITI);
            }
            else if (elementControlType == "Dialog")
            {
                WindowsDialogBoxTreeItem DBTI = new WindowsDialogBoxTreeItem();
                DBTI.UIAElementInfo.ElementObject = EI.ElementObject;
                DBTI.UIAElementInfo = (UIAElementInfo)EI;
                return(DBTI);
            }
            //    // TODO: add all other types of controls: List, label etc...
            else
            {
                WindowsControlTreeItem TVIChild = new WindowsControlTreeItem();
                TVIChild.UIAElementInfo.ElementObject = EI.ElementObject;
                TVIChild.UIAElementInfo = (UIAElementInfo)EI;
                return(TVIChild);
            }
        }
コード例 #2
0
 internal static ITreeViewItem GetWindowsElementTreeItem(ElementInfo EI)
 {
     if (EI.ElementTypeEnum == eElementType.Button)
     {
         WindowsButtonTreeItem BTI = new WindowsButtonTreeItem();
         BTI.UIAElementInfo = (UIAElementInfo)EI;
         BTI.UIAElementInfo.ElementObject = EI.ElementObject;
         return(BTI);
     }
     else if (EI.ElementTypeEnum == eElementType.TextBox)
     {
         WindowsTextBoxTreeItem TBTI = new WindowsTextBoxTreeItem();
         TBTI.UIAElementInfo.ElementObject = EI.ElementObject;
         TBTI.UIAElementInfo = (UIAElementInfo)EI;
         return(TBTI);
     }
     else if (EI.ElementTypeEnum == eElementType.Label)
     {
         WindowsLabelTreeItem WTBTI = new WindowsLabelTreeItem();
         WTBTI.UIAElementInfo.ElementObject = EI.ElementObject;
         WTBTI.UIAElementInfo = (UIAElementInfo)EI;
         return(WTBTI);
     }
     else if (EI.ElementTypeEnum == eElementType.ComboBox)
     {
         WindowsComboBoxTreeItem CBTI = new WindowsComboBoxTreeItem();
         CBTI.UIAElementInfo.ElementObject = EI.ElementObject;
         CBTI.UIAElementInfo = (UIAElementInfo)EI;
         return(CBTI);
     }
     else if (EI.ElementTypeEnum == eElementType.Tab)
     {
         WindowsTabItemTreeItem TITI = new WindowsTabItemTreeItem();
         TITI.UIAElementInfo.ElementObject = EI.ElementObject;
         TITI.UIAElementInfo = (UIAElementInfo)EI;
         return(TITI);
     }
     else if (EI.ElementTypeEnum == eElementType.MenuItem)
     {
         WindowsMenuItemTreeItem MBTI = new WindowsMenuItemTreeItem();
         MBTI.UIAElementInfo.ElementObject = EI.ElementObject;
         MBTI.UIAElementInfo = (UIAElementInfo)EI;
         return(MBTI);
     }
     else if (EI.ElementTypeEnum == eElementType.DatePicker)
     {
         WindowsDatePickerTreeItem DPTI = new WindowsDatePickerTreeItem();
         DPTI.UIAElementInfo.ElementObject = EI.ElementObject;
         DPTI.UIAElementInfo = (UIAElementInfo)EI;
         return(DPTI);
     }
     else if (EI.ElementTypeEnum == eElementType.Browser)
     {
         WindowsBrowserTreeItem TTI = new WindowsBrowserTreeItem();
         TTI.UIAElementInfo.ElementObject = EI.ElementObject;
         TTI.UIAElementInfo = (UIAElementInfo)EI;
         return(TTI);
     }
     else if (EI.ElementTypeEnum == eElementType.MenuBar)
     {
         WindowsMenuBarTreeItem MBTI = new WindowsMenuBarTreeItem();
         MBTI.UIAElementInfo.ElementObject = EI.ElementObject;
         MBTI.UIAElementInfo = (UIAElementInfo)EI;
         return(MBTI);
     }
     else if (EI.ElementTypeEnum == eElementType.CheckBox)
     {
         WindowsCheckBoxTreeItem CBTI = new WindowsCheckBoxTreeItem();
         CBTI.UIAElementInfo.ElementObject = EI.ElementObject;
         CBTI.UIAElementInfo = (UIAElementInfo)EI;
         return(CBTI);
     }
     else if (EI.ElementTypeEnum == eElementType.RadioButton)
     {
         WindowsRadioButtonTreeItem RBTI = new WindowsRadioButtonTreeItem();
         RBTI.UIAElementInfo.ElementObject = EI.ElementObject;
         RBTI.UIAElementInfo = (UIAElementInfo)EI;
         return(RBTI);
     }
     else if (EI.ElementTypeEnum == eElementType.List)
     {
         WindowsListBoxTreeItem LTI = new WindowsListBoxTreeItem();
         LTI.UIAElementInfo.ElementObject = EI.ElementObject;
         LTI.UIAElementInfo = (UIAElementInfo)EI;
         return(LTI);
     }
     else if (EI.ElementTypeEnum == eElementType.ListItem)
     {
         WindowsListItemTreeItem LITI = new WindowsListItemTreeItem();
         LITI.UIAElementInfo.ElementObject = EI.ElementObject;
         LITI.UIAElementInfo = (UIAElementInfo)EI;
         return(LITI);
     }
     else if (EI.ElementTypeEnum == eElementType.Dialog)
     {
         WindowsDialogBoxTreeItem DBTI = new WindowsDialogBoxTreeItem();
         DBTI.UIAElementInfo.ElementObject = EI.ElementObject;
         DBTI.UIAElementInfo = (UIAElementInfo)EI;
         return(DBTI);
     }
     else
     {
         WindowsControlTreeItem TVIChild = new WindowsControlTreeItem();
         TVIChild.UIAElementInfo.ElementObject = EI.ElementObject;
         TVIChild.UIAElementInfo = (UIAElementInfo)EI;
         return(TVIChild);
     }
 }