Export (0) Print
Expand All

WindowPattern.Close Method

Attempts to close the current window.

Namespace:  System.Windows.Automation
Assembly:  UIAutomationClient (in UIAutomationClient.dll)

public void Close()

ExceptionCondition
InvalidOperationException

The control is unable to perform the requested action.

ElementNotAvailableException

When the control is no longer available.

When called on a split pane control, this method will close the pane and remove the associated split. This method may also close all other panes depending on implementation.

In the following example, a WindowPattern control pattern is obtained from an AutomationElement and is subsequently used to close the AutomationElement.


///--------------------------------------------------------------------
/// <summary>
/// Obtains a WindowPattern control pattern from an automation element.
/// </summary>
/// <param name="targetControl">
/// The automation element of interest.
/// </param>
/// <returns>
/// A WindowPattern object.
/// </returns>
///--------------------------------------------------------------------
private WindowPattern GetWindowPattern(AutomationElement targetControl)
{
    WindowPattern windowPattern = null;

    try
    {
        windowPattern =
            targetControl.GetCurrentPattern(WindowPattern.Pattern)
            as WindowPattern;
    }
    catch (InvalidOperationException)
    {
        // object doesn't support the WindowPattern control pattern
        return null;
    }
    // Make sure the element is usable.
    if (false == windowPattern.WaitForInputIdle(10000))
    {
        // Object not responding in a timely manner
        return null;
    }
    return windowPattern;
}


...


///--------------------------------------------------------------------
/// <summary>
/// Calls the WindowPattern.Close() method for an associated 
/// automation element.
/// </summary>
/// <param name="windowPattern">
/// The WindowPattern control pattern obtained from
/// an automation element.
/// </param>
///--------------------------------------------------------------------
private void CloseWindow(WindowPattern windowPattern)
{
    try
    {
        windowPattern.Close();
    }
    catch (InvalidOperationException)
    {
        // object is not able to perform the requested action
        return;
    }
}


.NET Framework

Supported in: 4, 3.5, 3.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Community Additions

ADD
Show:
© 2014 Microsoft