PropertyCondition Constructors
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Initializes a new instance of the PropertyCondition class.
Overloads
PropertyCondition(AutomationProperty, Object) |
Initializes a new instance of the PropertyCondition class. |
PropertyCondition(AutomationProperty, Object, PropertyConditionFlags) |
Initializes a new instance of the PropertyCondition class, with flags. |
PropertyCondition(AutomationProperty, Object)
Initializes a new instance of the PropertyCondition class.
public:
PropertyCondition(System::Windows::Automation::AutomationProperty ^ property, System::Object ^ value);
public PropertyCondition (System.Windows.Automation.AutomationProperty property, object value);
new System.Windows.Automation.PropertyCondition : System.Windows.Automation.AutomationProperty * obj -> System.Windows.Automation.PropertyCondition
Public Sub New (property As AutomationProperty, value As Object)
Parameters
- property
- AutomationProperty
The property to test.
- value
- Object
The value to test the property for.
Examples
In the following example, a PropertyCondition specifies that the UI Automation element to be found has a control type of List. The PropertyCondition is then used to obtain the list element from a combo box.
Condition propCondition1 = new PropertyCondition(AutomationElement.ControlTypeProperty, ControlType.List);
AutomationElement listElement = elementCombo.FindFirst(TreeScope.Children, propCondition1);
Dim propCondition1 As New PropertyCondition(AutomationElement.ControlTypeProperty, ControlType.List)
Dim listElement As AutomationElement = elementCombo.FindFirst(TreeScope.Children, propCondition1)
Remarks
The property
parameter cannot be BoundingRectangleProperty.
Applies to
PropertyCondition(AutomationProperty, Object, PropertyConditionFlags)
Initializes a new instance of the PropertyCondition class, with flags.
public:
PropertyCondition(System::Windows::Automation::AutomationProperty ^ property, System::Object ^ value, System::Windows::Automation::PropertyConditionFlags flags);
public PropertyCondition (System.Windows.Automation.AutomationProperty property, object value, System.Windows.Automation.PropertyConditionFlags flags);
new System.Windows.Automation.PropertyCondition : System.Windows.Automation.AutomationProperty * obj * System.Windows.Automation.PropertyConditionFlags -> System.Windows.Automation.PropertyCondition
Public Sub New (property As AutomationProperty, value As Object, flags As PropertyConditionFlags)
Parameters
- property
- AutomationProperty
The property to test.
- value
- Object
The value to test the property for.
- flags
- PropertyConditionFlags
Flags that affect the comparison.
Examples
The following example uses a PropertyCondition to retrieve the Microsoft UI Automation element representing the main form of an application. The form is located by a case-insensitive search for its string identifier.
/// <summary>
/// Find a UI Automation child element by ID.
/// </summary>
/// <param name="controlName">Name of the control, such as "button1"</param>
/// <param name="parentElement">Parent element, such as an application window, or the
/// AutomationElement.RootElement when searching for the application window.</param>
/// <returns>The UI Automation element.</returns>
private AutomationElement FindChildElement(String controlName, AutomationElement rootElement)
{
if ((controlName == "") || (rootElement == null))
{
throw new ArgumentException("Argument cannot be null or empty.");
}
// Set a property condition that will be used to find the main form of the
// target application. In the case of a WinForms control, the name of the control
// is also the AutomationId of the element representing the control.
Condition propCondition = new PropertyCondition(
AutomationElement.AutomationIdProperty, controlName, PropertyConditionFlags.IgnoreCase);
// Find the element.
return rootElement.FindFirst(TreeScope.Element | TreeScope.Children, propCondition);
}
''' <summary>
''' Find a UI Automation child element by ID.
''' </summary>
''' <param name="controlName">Name of the control, such as "button1"</param>
''' <param name="rootElement">Parent element, such as an application window, or the
''' AutomationElement.RootElement when searching for the application window.</param>
''' <returns>The UI Automation element.</returns>
Private Function FindChildElement(ByVal controlName As String, ByVal rootElement As AutomationElement) _
As AutomationElement
If controlName = "" OrElse rootElement Is Nothing Then
Throw New ArgumentException("Argument cannot be null or empty.")
End If
' Set a property condition that will be used to find the main form of the
' target application. In the case of a WinForms control, the name of the control
' is also the AutomationId of the element representing the control.
Dim propCondition As New PropertyCondition(AutomationElement.AutomationIdProperty, _
controlName, PropertyConditionFlags.IgnoreCase)
' Find the element.
Return rootElement.FindFirst(TreeScope.Element Or TreeScope.Children, propCondition)
End Function 'FindChildElement