WindowPattern.WindowPatternInformation.IsTopmost Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene un valor que especifica si AutomationElement es el elemento superior del orden z.
public:
property bool IsTopmost { bool get(); };
public bool IsTopmost { get; }
member this.IsTopmost : bool
Public ReadOnly Property IsTopmost As Boolean
Valor de propiedad
true
si AutomationElement es de nivel superior; en caso contrario, false
.
Ejemplos
En el ejemplo siguiente, se define un AutomationPropertyChangedEventHandler objeto para escuchar los cambios en de IsTopmostProperty un AutomationElementobjeto .
///--------------------------------------------------------------------
/// <summary>
/// Register for automation property change events of interest.
/// </summary>
/// <param name="targetControl">
/// The automation element of interest.
/// </param>
///--------------------------------------------------------------------
private void RegisterForPropertyChangedEvents(
AutomationElement targetControl)
{
AutomationPropertyChangedEventHandler propertyChangeListener =
new AutomationPropertyChangedEventHandler(
OnTopmostPropertyChange);
Automation.AddAutomationPropertyChangedEventHandler(
targetControl,
TreeScope.Element,
propertyChangeListener,
WindowPattern.IsTopmostProperty);
}
'''--------------------------------------------------------------------
''' <summary>
''' Register for automation property change events of interest.
''' </summary>
''' <param name="targetControl">
''' The automation element of interest.
''' </param>
'''--------------------------------------------------------------------
Private Sub RegisterForPropertyChangedEvents( _
ByVal targetControl As AutomationElement)
Dim propertyChangeListener As AutomationPropertyChangedEventHandler = _
New AutomationPropertyChangedEventHandler(AddressOf _
OnTopmostPropertyChange)
Automation.AddAutomationPropertyChangedEventHandler( _
targetControl, _
TreeScope.Element, _
propertyChangeListener, _
WindowPattern.IsTopmostProperty)
End Sub
///--------------------------------------------------------------------
/// <summary>
/// Register for automation property change events of interest.
/// </summary>
/// <param name="src">Object that raised the event.</param>
/// <param name="e">Event arguments.</param>
///--------------------------------------------------------------------
private void OnTopmostPropertyChange(object src, AutomationPropertyChangedEventArgs e)
{
// Make sure the element still exists. Elements such as tooltips
// can disappear before the event is processed.
AutomationElement sourceElement;
try
{
sourceElement = src as AutomationElement;
}
catch (ElementNotAvailableException)
{
return;
}
// Get a WindowPattern from the source of the event.
WindowPattern windowPattern = GetWindowPattern(sourceElement);
if (windowPattern.Current.IsTopmost)
{
//TODO: event handling
}
}
'''--------------------------------------------------------------------
''' <summary>
''' Register for automation property change events of interest.
''' </summary>
''' <param name="src">Object that raised the event.</param>
''' <param name="e">Event arguments.</param>
'''--------------------------------------------------------------------
Private Sub OnTopmostPropertyChange(ByVal src As Object, _
ByVal e As AutomationPropertyChangedEventArgs)
' Make sure the element still exists. Elements such as tooltips
' can disappear before the event is processed.
Dim sourceElement As AutomationElement
Try
sourceElement = DirectCast(src, AutomationElement)
Catch exc As ElementNotAvailableException
Return
End Try
' Get a WindowPattern from the source of the event.
Dim windowPattern As WindowPattern = GetWindowPattern(sourceElement)
If (WindowPattern.Current.IsTopmost) Then
'TODO: event handling
End If
End Sub