protected void ifUltraGridProcessing( ifUltraGridOperations operation) { // colleciton of the selected rows System.Collections.Generic.List<AutomationElement> selectedItems = new System.Collections.Generic.List<AutomationElement>(); try { foreach (AutomationElement inputObject in this.InputObject) { AutomationElementCollection tableItems = // 20120824 //this.InputObject.FindAll(TreeScope.Children, inputObject.FindAll( TreeScope.Children, new PropertyCondition( AutomationElement.ControlTypeProperty, ControlType.Custom)); if (tableItems.Count > 0) { // bool notTheFirstChild = false; int currentRowNumber = 0; bool notTheLastChild = true; foreach (AutomationElement child in tableItems) { currentRowNumber++; if (currentRowNumber == tableItems.Count) notTheLastChild = false; // if (child.Current.Name.Contains("row") || // child.Current.Name.Contains("Row")) { AutomationElementCollection row = child.FindAll(TreeScope.Children, new PropertyCondition( AutomationElement.ControlTypeProperty, ControlType.Custom)); bool alreadyFoundInTheRow = false; int counter = 0; foreach (AutomationElement grandchild in row) { string strValue = String.Empty; // switch (operation) { // case ifUltraGridOperations.selectItems: // case ifUltraGridOperations.getItems: // WriteVerbose(this, "select items"); ValuePattern valPattern = null; try { valPattern = grandchild.GetCurrentPattern(ValuePattern.Pattern) as ValuePattern; WriteVerbose(this, "getting the valuePattern of the control"); } catch { WriteVerbose(this, "unable to get ValuePattern of " + grandchild.Current.Name); } // string strValue = String.Empty; try { strValue = valPattern.Current.Value; WriteVerbose(this, "valuePattern of " + grandchild.Current.Name + " = " + strValue); } catch { WriteVerbose(this, "unable to get ValuePattern.Current.Value of " + grandchild.Current.Name); } // if (strValue == clickString || // strValue == clickString2) { if (!alreadyFoundInTheRow && IsInTheList(strValue)) { alreadyFoundInTheRow = true; counter++; // grandchild.SetFocus(); // fail // child.SetFocus();//fail // InvokePattern invPattern = null; // try { // invPattern = // child.GetCurrentPattern(InvokePattern.Pattern) // as InvokePattern; // invPattern.Invoke(); // // System.Windows.Forms.SendKeys.SendWait(" "); // QMM // WriteVerbose(this, strValue + " selected"); // } catch { // // System.Windows.Forms.SendKeys.SendWait("+ "); // PowerGUI doesn’t react // } WriteVerbose(this, "this control is of requested value: " + strValue + ", sending a Ctrl+Click to it"); switch (operation) { case ifUltraGridOperations.selectItems: // in case of this operation is a selection of items // clicks are needed // otherwise, just return the set of rows found if (ClickControl(this, child, false, false, false, false, true, // notTheFirstChild, false, // notTheLastChild, // true, false, Preferences.ClickOnControlByCoordX, Preferences.ClickOnControlByCoordY)) { selectedItems.Add(child); WriteVerbose(this, "the " + child.Current.Name + " added to the output collection"); } // System.Windows.Point p = child.GetClickablePoint();//fail // System.Windows.Point p = grandchild.GetClickablePoint();//fail // keybd_event((byte)VK_LCONTROL, 0x45, KEYEVENTF_KEYUP, 0); uint pressed = 0x8000; if ((NativeMethods.GetKeyState(NativeMethods.VK_LCONTROL) & pressed) > 0) { NativeMethods.keybd_event((byte)NativeMethods.VK_LCONTROL, 0x45, NativeMethods.KEYEVENTF_EXTENDEDKEY | NativeMethods.KEYEVENTF_KEYUP, 0); } if ((NativeMethods.GetKeyState(NativeMethods.VK_RCONTROL) & pressed) > 0) { NativeMethods.keybd_event((byte)NativeMethods.VK_RCONTROL, 0x45, NativeMethods.KEYEVENTF_EXTENDEDKEY | NativeMethods.KEYEVENTF_KEYUP, 0); } if ((NativeMethods.GetKeyState(NativeMethods.VK_CONTROL) & pressed) > 0) { NativeMethods.keybd_event((byte)NativeMethods.VK_CONTROL, 0x45, NativeMethods.KEYEVENTF_EXTENDEDKEY | NativeMethods.KEYEVENTF_KEYUP, 0); } break; case ifUltraGridOperations.getItems: selectedItems.Add(child); WriteVerbose(this, "the " + child.Current.Name + " added to the output collection"); break; case ifUltraGridOperations.getSelection: if (GetColorProbe(this, child)) { selectedItems.Add(child); WriteVerbose(this, "the " + child.Current.Name + " added to the output collection"); } break; } if (this.Count > 0 && counter == this.Count) { break; } } // break; // case ifUltraGridOperations.getSelection: // // WriteVerbose(this, "get the selection"); // // // // break; // default: // WriteVerbose(this, "default"); // break; // } WriteVerbose(this, "working with " + grandchild.Current.Name + "\t" + strValue); } // } } // WriteObject(this, true); WriteObject(this, selectedItems); } else { WriteVerbose(this, "no elements of type ControlType.Custom were found under the input control"); } } // 20120824 } catch (Exception ee) { ErrorRecord err = new ErrorRecord( ee, "ExceptionInSectingItems", ErrorCategory.InvalidOperation, this.InputObject); err.ErrorDetails = new ErrorDetails("Exception were thrown during the cycle of selecting items."); WriteObject(this, false); } // return result; }
protected void ifUltraGridProcessing( ifUltraGridOperations operation) { // collection of the selected rows // 20131109 //System.Collections.Generic.List<AutomationElement> selectedItems = // new System.Collections.Generic.List<AutomationElement>(); List<IUiElement> selectedItems = new List<IUiElement>(); try { // 20131109 //foreach (AutomationElement inputObject in this.InputObject) { foreach (IUiElement inputObject in InputObject) { // 20131109 //AutomationElementCollection tableItems = IUiEltCollection tableItems = inputObject.FindAll( classic.TreeScope.Children, new classic.PropertyCondition( classic.AutomationElement.ControlTypeProperty, classic.ControlType.Custom)); // foreach (AutomationElementCollection tableItems in ((IAutomationElementCollection)this.InputObject).Select(inputObject => inputObject.FindAll( // classic.TreeScope.Children, // new PropertyCondition( // AutomationElement.ControlTypeProperty, // ControlType.Custom)))) // { if (tableItems.Count > 0) { int currentRowNumber = 0; bool notTheLastChild = true; // 20131109 //foreach (AutomationElement child in tableItems) { foreach (IUiElement child in tableItems) { currentRowNumber++; if (currentRowNumber == tableItems.Count) notTheLastChild = false; // 20131109 //AutomationElementCollection row = IUiEltCollection row = child.FindAll(classic.TreeScope.Children, new classic.PropertyCondition( classic.AutomationElement.ControlTypeProperty, classic.ControlType.Custom)); bool alreadyFoundInTheRow = false; int counter = 0; // 20131109 //foreach (AutomationElement grandchild in row) { foreach (IUiElement grandchild in row) { string strValue = String.Empty; // 20131208 // ValuePattern valPattern = null; IValuePattern valPattern = null; try { valPattern = // 20131208 // grandchild.GetCurrentPattern(classic.ValuePattern.Pattern) // grandchild.GetCurrentPattern<IValuePattern, ValuePattern>(classic.ValuePattern.Pattern) // as ValuePattern; grandchild.GetCurrentPattern<IValuePattern>(classic.ValuePattern.Pattern); WriteVerbose(this, "getting the valuePattern of the control"); } catch { WriteVerbose(this, "unable to get ValuePattern of " + // 20140312 // grandchild.Current.Name); grandchild.GetCurrent().Name); } // string strValue = String.Empty; try { strValue = valPattern.Current.Value; WriteVerbose(this, "valuePattern of " + // 20140312 // grandchild.Current.Name + grandchild.GetCurrent().Name + " = " + strValue); } catch { WriteVerbose(this, "unable to get ValuePattern.Current.Value of " + // 20140312 // grandchild.Current.Name); grandchild.GetCurrent().Name); } if (!alreadyFoundInTheRow && IsInTheList(strValue)) { alreadyFoundInTheRow = true; counter++; WriteVerbose(this, "this control is of requested value: " + strValue + ", sending a Ctrl+Click to it"); switch (operation) { case ifUltraGridOperations.SelectItems: // in case of this operation is a selection of items // clicks are needed // otherwise, just return the set of rows found if (ClickControl(this, child, new ClickSettings() { Ctrl = true, RelativeX = Preferences.ClickOnControlByCoordX, RelativeY = Preferences.ClickOnControlByCoordY })) { /* false, false, false, false, true, // notTheFirstChild, false, // notTheLastChild, // true, false, // 20131125 0, Preferences.ClickOnControlByCoordX, Preferences.ClickOnControlByCoordY)) { */ selectedItems.Add(child); WriteVerbose(this, // 20140312 // "the " + child.Current.Name + "the " + child.GetCurrent().Name + " added to the output collection"); } const uint pressed = 0x8000; // uint pressed = 0x8000; if ((NativeMethods.GetKeyState(NativeMethods.VK_LCONTROL) & pressed) > 0) { NativeMethods.keybd_event(NativeMethods.VK_LCONTROL, 0x45, NativeMethods.KEYEVENTF_EXTENDEDKEY | NativeMethods.KEYEVENTF_KEYUP, 0); /* NativeMethods.keybd_event((byte)NativeMethods.VK_LCONTROL, 0x45, NativeMethods.KEYEVENTF_EXTENDEDKEY | NativeMethods.KEYEVENTF_KEYUP, 0); */ } if ((NativeMethods.GetKeyState(NativeMethods.VK_RCONTROL) & pressed) > 0) { NativeMethods.keybd_event(NativeMethods.VK_RCONTROL, 0x45, NativeMethods.KEYEVENTF_EXTENDEDKEY | NativeMethods.KEYEVENTF_KEYUP, 0); /* NativeMethods.keybd_event((byte)NativeMethods.VK_RCONTROL, 0x45, NativeMethods.KEYEVENTF_EXTENDEDKEY | NativeMethods.KEYEVENTF_KEYUP, 0); */ } if ((NativeMethods.GetKeyState(NativeMethods.VK_CONTROL) & pressed) > 0) { NativeMethods.keybd_event(NativeMethods.VK_CONTROL, 0x45, NativeMethods.KEYEVENTF_EXTENDEDKEY | NativeMethods.KEYEVENTF_KEYUP, 0); /* NativeMethods.keybd_event((byte)NativeMethods.VK_CONTROL, 0x45, NativeMethods.KEYEVENTF_EXTENDEDKEY | NativeMethods.KEYEVENTF_KEYUP, 0); */ } break; case ifUltraGridOperations.GetItems: selectedItems.Add(child); WriteVerbose(this, // 20140312 // "the " + child.Current.Name + "the " + child.GetCurrent().Name + " added to the output collection"); break; case ifUltraGridOperations.GetSelection: if (GetColorProbe(this, child)) { selectedItems.Add(child); WriteVerbose(this, // 20140312 // "the " + child.Current.Name + "the " + child.GetCurrent().Name + " added to the output collection"); } break; } if (Count > 0 && counter == Count) { break; } } WriteVerbose(this, "working with " + // 20140312 // grandchild.Current.Name + "\t" + strValue); grandchild.GetCurrent().Name + "\t" + strValue); } } WriteObject(this, selectedItems); } else { WriteVerbose(this, "no elements of type ControlType.Custom were found under the input control"); } } /* foreach (AutomationElement inputObject in this.InputObject) { AutomationElementCollection tableItems = inputObject.FindAll( classic.TreeScope.Children, new PropertyCondition( AutomationElement.ControlTypeProperty, ControlType.Custom)); if (tableItems.Count > 0) { int currentRowNumber = 0; bool notTheLastChild = true; foreach (AutomationElement child in tableItems) { currentRowNumber++; if (currentRowNumber == tableItems.Count) notTheLastChild = false; AutomationElementCollection row = child.FindAll(TreeScope.Children, new PropertyCondition( AutomationElement.ControlTypeProperty, ControlType.Custom)); bool alreadyFoundInTheRow = false; int counter = 0; foreach (AutomationElement grandchild in row) { string strValue = String.Empty; ValuePattern valPattern = null; try { valPattern = grandchild.GetCurrentPattern(classic.ValuePattern.Pattern) as ValuePattern; WriteVerbose(this, "getting the valuePattern of the control"); } catch { WriteVerbose(this, "unable to get ValuePattern of " + grandchild.Current.Name); } // string strValue = String.Empty; try { strValue = valPattern.Current.Value; WriteVerbose(this, "valuePattern of " + grandchild.Current.Name + " = " + strValue); } catch { WriteVerbose(this, "unable to get ValuePattern.Current.Value of " + grandchild.Current.Name); } if (!alreadyFoundInTheRow && IsInTheList(strValue)) { alreadyFoundInTheRow = true; counter++; WriteVerbose(this, "this control is of requested value: " + strValue + ", sending a Ctrl+Click to it"); switch (operation) { case ifUltraGridOperations.selectItems: // in case of this operation is a selection of items // clicks are needed // otherwise, just return the set of rows found if (ClickControl(this, child, false, false, false, false, true, // notTheFirstChild, false, // notTheLastChild, // true, false, Preferences.ClickOnControlByCoordX, Preferences.ClickOnControlByCoordY)) { selectedItems.Add(child); WriteVerbose(this, "the " + child.Current.Name + " added to the output collection"); } uint pressed = 0x8000; if ((NativeMethods.GetKeyState(NativeMethods.VK_LCONTROL) & pressed) > 0) { NativeMethods.keybd_event((byte)NativeMethods.VK_LCONTROL, 0x45, NativeMethods.KEYEVENTF_EXTENDEDKEY | NativeMethods.KEYEVENTF_KEYUP, 0); } if ((NativeMethods.GetKeyState(NativeMethods.VK_RCONTROL) & pressed) > 0) { NativeMethods.keybd_event((byte)NativeMethods.VK_RCONTROL, 0x45, NativeMethods.KEYEVENTF_EXTENDEDKEY | NativeMethods.KEYEVENTF_KEYUP, 0); } if ((NativeMethods.GetKeyState(NativeMethods.VK_CONTROL) & pressed) > 0) { NativeMethods.keybd_event((byte)NativeMethods.VK_CONTROL, 0x45, NativeMethods.KEYEVENTF_EXTENDEDKEY | NativeMethods.KEYEVENTF_KEYUP, 0); } break; case ifUltraGridOperations.getItems: selectedItems.Add(child); WriteVerbose(this, "the " + child.Current.Name + " added to the output collection"); break; case ifUltraGridOperations.getSelection: if (GetColorProbe(this, child)) { selectedItems.Add(child); WriteVerbose(this, "the " + child.Current.Name + " added to the output collection"); } break; } if (this.Count > 0 && counter == this.Count) { break; } } WriteVerbose(this, "working with " + grandchild.Current.Name + "\t" + strValue); } } WriteObject(this, selectedItems); } else { WriteVerbose(this, "no elements of type ControlType.Custom were found under the input control"); } } // 20120824 */ } catch (Exception ee) { ErrorRecord err = new ErrorRecord( ee, "ExceptionInSectingItems", ErrorCategory.InvalidOperation, InputObject); err.ErrorDetails = new ErrorDetails("Exception were thrown during the cycle of selecting items."); WriteObject(this, false); // this.WriteError( // this, // "", // "", // TODO // this.WriteError(); } // return result; }
protected void ifUltraGridProcessing( ifUltraGridOperations operation) { // collection of the selected rows // 20131109 //System.Collections.Generic.List<AutomationElement> selectedItems = // new System.Collections.Generic.List<AutomationElement>(); List <IUiElement> selectedItems = new List <IUiElement>(); try { // 20131109 //foreach (AutomationElement inputObject in this.InputObject) { foreach (IUiElement inputObject in InputObject) { // 20131109 //AutomationElementCollection tableItems = IUiEltCollection tableItems = inputObject.FindAll( classic.TreeScope.Children, new classic.PropertyCondition( classic.AutomationElement.ControlTypeProperty, classic.ControlType.Custom)); // foreach (AutomationElementCollection tableItems in ((IAutomationElementCollection)this.InputObject).Select(inputObject => inputObject.FindAll( // classic.TreeScope.Children, // new PropertyCondition( // AutomationElement.ControlTypeProperty, // ControlType.Custom)))) // { if (tableItems.Count > 0) { int currentRowNumber = 0; bool notTheLastChild = true; // 20131109 //foreach (AutomationElement child in tableItems) { foreach (IUiElement child in tableItems) { currentRowNumber++; if (currentRowNumber == tableItems.Count) { notTheLastChild = false; } // 20131109 //AutomationElementCollection row = IUiEltCollection row = child.FindAll(classic.TreeScope.Children, new classic.PropertyCondition( classic.AutomationElement.ControlTypeProperty, classic.ControlType.Custom)); bool alreadyFoundInTheRow = false; int counter = 0; // 20131109 //foreach (AutomationElement grandchild in row) { foreach (IUiElement grandchild in row) { string strValue = String.Empty; // 20131208 // ValuePattern valPattern = null; IValuePattern valPattern = null; try { valPattern = // 20131208 // grandchild.GetCurrentPattern(classic.ValuePattern.Pattern) // grandchild.GetCurrentPattern<IValuePattern, ValuePattern>(classic.ValuePattern.Pattern) // as ValuePattern; grandchild.GetCurrentPattern <IValuePattern>(classic.ValuePattern.Pattern); WriteVerbose(this, "getting the valuePattern of the control"); } catch { WriteVerbose(this, "unable to get ValuePattern of " + // 20140312 // grandchild.Current.Name); grandchild.GetCurrent().Name); } // string strValue = String.Empty; try { strValue = valPattern.Current.Value; WriteVerbose(this, "valuePattern of " + // 20140312 // grandchild.Current.Name + grandchild.GetCurrent().Name + " = " + strValue); } catch { WriteVerbose(this, "unable to get ValuePattern.Current.Value of " + // 20140312 // grandchild.Current.Name); grandchild.GetCurrent().Name); } if (!alreadyFoundInTheRow && IsInTheList(strValue)) { alreadyFoundInTheRow = true; counter++; WriteVerbose(this, "this control is of requested value: " + strValue + ", sending a Ctrl+Click to it"); switch (operation) { case ifUltraGridOperations.SelectItems: // in case of this operation is a selection of items // clicks are needed // otherwise, just return the set of rows found if (ClickControl(this, child, new ClickSettings() { Ctrl = true, RelativeX = Preferences.ClickOnControlByCoordX, RelativeY = Preferences.ClickOnControlByCoordY })) { /* * false, * false, * false, * false, * true, // notTheFirstChild, * false, // notTheLastChild, // true, * false, * // 20131125 * 0, * Preferences.ClickOnControlByCoordX, * Preferences.ClickOnControlByCoordY)) { */ selectedItems.Add(child); WriteVerbose(this, // 20140312 // "the " + child.Current.Name + "the " + child.GetCurrent().Name + " added to the output collection"); } const uint pressed = 0x8000; // uint pressed = 0x8000; if ((NativeMethods.GetKeyState(NativeMethods.VK_LCONTROL) & pressed) > 0) { NativeMethods.keybd_event(NativeMethods.VK_LCONTROL, 0x45, NativeMethods.KEYEVENTF_EXTENDEDKEY | NativeMethods.KEYEVENTF_KEYUP, 0); /* * NativeMethods.keybd_event((byte)NativeMethods.VK_LCONTROL, 0x45, NativeMethods.KEYEVENTF_EXTENDEDKEY | NativeMethods.KEYEVENTF_KEYUP, 0); */ } if ((NativeMethods.GetKeyState(NativeMethods.VK_RCONTROL) & pressed) > 0) { NativeMethods.keybd_event(NativeMethods.VK_RCONTROL, 0x45, NativeMethods.KEYEVENTF_EXTENDEDKEY | NativeMethods.KEYEVENTF_KEYUP, 0); /* * NativeMethods.keybd_event((byte)NativeMethods.VK_RCONTROL, 0x45, NativeMethods.KEYEVENTF_EXTENDEDKEY | NativeMethods.KEYEVENTF_KEYUP, 0); */ } if ((NativeMethods.GetKeyState(NativeMethods.VK_CONTROL) & pressed) > 0) { NativeMethods.keybd_event(NativeMethods.VK_CONTROL, 0x45, NativeMethods.KEYEVENTF_EXTENDEDKEY | NativeMethods.KEYEVENTF_KEYUP, 0); /* * NativeMethods.keybd_event((byte)NativeMethods.VK_CONTROL, 0x45, NativeMethods.KEYEVENTF_EXTENDEDKEY | NativeMethods.KEYEVENTF_KEYUP, 0); */ } break; case ifUltraGridOperations.GetItems: selectedItems.Add(child); WriteVerbose(this, // 20140312 // "the " + child.Current.Name + "the " + child.GetCurrent().Name + " added to the output collection"); break; case ifUltraGridOperations.GetSelection: if (GetColorProbe(this, child)) { selectedItems.Add(child); WriteVerbose(this, // 20140312 // "the " + child.Current.Name + "the " + child.GetCurrent().Name + " added to the output collection"); } break; } if (Count > 0 && counter == Count) { break; } } WriteVerbose(this, "working with " + // 20140312 // grandchild.Current.Name + "\t" + strValue); grandchild.GetCurrent().Name + "\t" + strValue); } } WriteObject(this, selectedItems); } else { WriteVerbose(this, "no elements of type ControlType.Custom were found under the input control"); } } /* * foreach (AutomationElement inputObject in this.InputObject) { * * AutomationElementCollection tableItems = * inputObject.FindAll( * classic.TreeScope.Children, * new PropertyCondition( * AutomationElement.ControlTypeProperty, * ControlType.Custom)); * * if (tableItems.Count > 0) { * int currentRowNumber = 0; * bool notTheLastChild = true; * foreach (AutomationElement child in tableItems) { * currentRowNumber++; * if (currentRowNumber == tableItems.Count) notTheLastChild = false; * AutomationElementCollection row = * child.FindAll(TreeScope.Children, * new PropertyCondition( * AutomationElement.ControlTypeProperty, * ControlType.Custom)); * bool alreadyFoundInTheRow = false; * int counter = 0; * foreach (AutomationElement grandchild in row) { * * string strValue = String.Empty; * ValuePattern valPattern = null; * try { * valPattern = * grandchild.GetCurrentPattern(classic.ValuePattern.Pattern) * as ValuePattern; * WriteVerbose(this, * "getting the valuePattern of the control"); * } catch { * WriteVerbose(this, * "unable to get ValuePattern of " + * grandchild.Current.Name); * } * // string strValue = String.Empty; * try { * strValue = * valPattern.Current.Value; * WriteVerbose(this, * "valuePattern of " + * grandchild.Current.Name + * " = " + * strValue); * * } catch { * WriteVerbose(this, * "unable to get ValuePattern.Current.Value of " + * grandchild.Current.Name); * } * * * * if (!alreadyFoundInTheRow && IsInTheList(strValue)) { * alreadyFoundInTheRow = true; * counter++; * * WriteVerbose(this, * "this control is of requested value: " + * strValue + * ", sending a Ctrl+Click to it"); * * * switch (operation) { * case ifUltraGridOperations.selectItems: * // in case of this operation is a selection of items * // clicks are needed * // otherwise, just return the set of rows found * if (ClickControl(this, * child, * false, * false, * false, * false, * true, // notTheFirstChild, * false, // notTheLastChild, // true, * false, * Preferences.ClickOnControlByCoordX, * Preferences.ClickOnControlByCoordY)) { * selectedItems.Add(child); * WriteVerbose(this, * "the " + child.Current.Name + * " added to the output collection"); * } * * uint pressed = 0x8000; * if ((NativeMethods.GetKeyState(NativeMethods.VK_LCONTROL) & pressed) > 0) { * NativeMethods.keybd_event((byte)NativeMethods.VK_LCONTROL, 0x45, NativeMethods.KEYEVENTF_EXTENDEDKEY | NativeMethods.KEYEVENTF_KEYUP, 0); * } * if ((NativeMethods.GetKeyState(NativeMethods.VK_RCONTROL) & pressed) > 0) { * NativeMethods.keybd_event((byte)NativeMethods.VK_RCONTROL, 0x45, NativeMethods.KEYEVENTF_EXTENDEDKEY | NativeMethods.KEYEVENTF_KEYUP, 0); * } * if ((NativeMethods.GetKeyState(NativeMethods.VK_CONTROL) & pressed) > 0) { * NativeMethods.keybd_event((byte)NativeMethods.VK_CONTROL, 0x45, NativeMethods.KEYEVENTF_EXTENDEDKEY | NativeMethods.KEYEVENTF_KEYUP, 0); * } * break; * case ifUltraGridOperations.getItems: * selectedItems.Add(child); * WriteVerbose(this, * "the " + child.Current.Name + * " added to the output collection"); * break; * case ifUltraGridOperations.getSelection: * if (GetColorProbe(this, * child)) { * selectedItems.Add(child); * WriteVerbose(this, * "the " + child.Current.Name + * " added to the output collection"); * } * break; * } * if (this.Count > 0 && counter == this.Count) { * break; * } * } * WriteVerbose(this, "working with " + * grandchild.Current.Name + "\t" + strValue); * } * * } * * WriteObject(this, selectedItems); * } else { * WriteVerbose(this, "no elements of type ControlType.Custom were found under the input control"); * } * * } // 20120824 */ } catch (Exception ee) { ErrorRecord err = new ErrorRecord( ee, "ExceptionInSectingItems", ErrorCategory.InvalidOperation, InputObject); err.ErrorDetails = new ErrorDetails("Exception were thrown during the cycle of selecting items."); WriteObject(this, false); // this.WriteError( // this, // "", // "", // TODO // this.WriteError(); } // return result; }