KeyboardAccelerator.ScopeOwner 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 o establece el ámbito (o destino) del acelerador de teclado.
public:
property DependencyObject ^ ScopeOwner { DependencyObject ^ get(); void set(DependencyObject ^ value); };
DependencyObject ScopeOwner();
void ScopeOwner(DependencyObject value);
public DependencyObject ScopeOwner { get; set; }
var dependencyObject = keyboardAccelerator.scopeOwner;
keyboardAccelerator.scopeOwner = dependencyObject;
Public Property ScopeOwner As DependencyObject
Valor de propiedad
Ámbito (o destino) del acelerador de teclado. El valor predeterminado es null
(ámbito global).
Ejemplos
En este ejemplo se muestra cómo crear un acelerador con ámbito. El acelerador Ctrl+Menu+S solo se invoca si el foco está en un elemento secundario de MainGrid
.
<Grid x:Name="MainGrid">
…
<Button Content="Save" Click="OnSave">
<Button.KeyboardAccelerators>
<KeyboardAccelerator
Key="S"
Modifiers="Control, Menu"
ScopeOwner="{x:Bind MainGrid}" />
</Button.KeyboardAccelerators>
</Button>
…
</Grid>
<Grid x:Name="SecondaryGrid"> >
…
<Button Content="Edit" Click Click="OnEdit"/>
…
</Grid>
Comentarios
De forma predeterminada, un acelerador tiene ámbito global. Sin embargo, puede restringir el ámbito mediante ScopeOwner
o deshabilitar un acelerador completamente mediante IsEnabled.