Sdílet prostřednictvím


KeyBinding Třída

Definice

KeyGesture Vytvoří vazbu na (nebo jinou RoutedCommandICommand implementaci).

public ref class KeyBinding : System::Windows::Input::InputBinding
public class KeyBinding : System.Windows.Input.InputBinding
type KeyBinding = class
    inherit InputBinding
Public Class KeyBinding
Inherits InputBinding
Dědičnost
Dědičnost

Příklady

Následující příklad vytvoří KeyBinding a přidá ho do InputBindingCollection kořenového okna.

<Window.InputBindings>
  <KeyBinding Command="ApplicationCommands.Open"
              Gesture="CTRL+R" />
</Window.InputBindings>
// Creating a KeyBinding between the Open command and Ctrl-R
KeyBinding OpenCmdKeyBinding = new KeyBinding(
    ApplicationCommands.Open, 
    Key.R, 
    ModifierKeys.Control);

this.InputBindings.Add(OpenCmdKeyBinding);
' Creating a KeyBinding between the Open command and Ctrl-R
Dim OpenCmdKeyBinding As New KeyBinding(ApplicationCommands.Open, Key.R, ModifierKeys.Control)

Me.InputBindings.Add(OpenCmdKeyBinding)

Poznámky

A KeyBinding přidruží k KeyGesture nějakému ICommand, například .RoutedCommand RoutedCommand je primární implementací ICommand rozhraní pro systém příkazů WPF . Obecně platí, že při KeyGesture spuštění příkazu se vyvolá, i když chování příkazu je dále ovlivněno faktory specifickými pro příkazy, jako CanExecute je hodnota. Další informace o příkazech najdete v přehledu příkazů.

S výjimkou funkčních kláves a číselných klávesových kláves musí platný KeyGesture obsahovat přesně jeden Key a jeden nebo více ModifierKeys. Funkční klávesy a numerické klávesy nevyžadují modifikační klávesu, aby byly platné KeyGesture. Je možné zadat neplatné KeyGesture gesto s KeyBinding neplatným přidruženým gestem, a to buď prostřednictvím XAML, nebo kódu. Například neexistuje žádné ověření, které brání vytvoření a vytvoření vazby KeyGesture obsahující pouze nefunkční klíč, nebo pouze modifikátory, ale žádný klíč. Takový se KeyBinding nikdy nepokusí vyvolat přidružený příkaz.

Při definování KeyBinding jazyka XAML (Extensible Application Markup Language) existují dva způsoby, jak určit KeyGesture. Prvním způsobem, jak vytvořit v XAML, KeyBinding je definovat Gesture atribut elementu KeyBinding , který umožňuje syntaxi zadat klíče a modifikátory jako jeden řetězec, například CTRL+P. Druhým způsobem je definovat Key atribut a Modifiers atributy elementu KeyBinding . Oba způsoby nastavení KeyGesture jsou ekvivalentní a upraví stejný základní objekt, ale pokud se použijí oba objekty, dojde ke konfliktu. V případě Key, , Modifiersa Gesture atributy jsou všechny nastaveny, atribut, který je definován jako poslední bude použita pro KeyGesture. Můžete také mít situace, kdy například Key sada naposledy přepíše jenom klíčovou komponentu předchozího gesta, ale ponechá modifikátory gesta stejné. Obecně se doporučuje používat pouze Gesture atribut z XAML. Tím se vyhnete nejednoznačnosti, poskytuje nejfektivnější syntaxi a poskytuje nejpřehlednější reprezentaci serializace.

A KeyBinding lze definovat na konkrétním objektu nebo na úrovni třídy registrací RegisterClassInputBinding třídy CommandManager . Nejtypičtější způsob, jak definovat šablonu KeyBinding ovládacího prvku, nastavení InputBindings vlastnosti v XAML deklarací jednoho nebo více MouseBinding prvků.KeyBinding

Konstruktory

Name Description
KeyBinding()

Inicializuje novou instanci KeyBinding třídy.

KeyBinding(ICommand, Key, ModifierKeys)

Inicializuje novou instanci KeyBinding třídy pomocí zadané ICommand a zadané Key a ModifierKeys která bude převedena na .KeyGesture

KeyBinding(ICommand, KeyGesture)

Inicializuje novou instanci KeyBinding třídy pomocí zadané ICommand a KeyGesture.

Pole

Name Description
KeyProperty

Identifikuje Key vlastnost závislosti.

ModifiersProperty

Identifikuje Modifiers vlastnost závislosti.

Vlastnosti

Name Description
CanFreeze

Získá hodnotu, která označuje, zda objekt lze vytvořit nemodifovatelný.

(Zděděno od Freezable)
Command

Získá nebo nastaví přidružené k ICommand této vstupní vazbě.

(Zděděno od InputBinding)
CommandParameter

Získá nebo nastaví data specifická pro příkaz pro konkrétní příkaz.

(Zděděno od InputBinding)
CommandTarget

Získá nebo nastaví cílový prvek příkazu.

(Zděděno od InputBinding)
DependencyObjectType

DependencyObjectType Získá ten, který zabalí typ CLR této instance.

(Zděděno od DependencyObject)
Dispatcher

Dispatcher Získá toto DispatcherObject je přidružené.

(Zděděno od DispatcherObject)
Gesture

Získá nebo nastaví gesto přidružené k tomuto KeyBinding.

IsFrozen

Získá hodnotu, která označuje, zda objekt je aktuálně upravitelný.

(Zděděno od Freezable)
IsSealed

Získá hodnotu, která označuje, zda je tato instance aktuálně zapečetěna (jen pro čtení).

(Zděděno od DependencyObject)
Key

Získá nebo nastaví Key přidružené k KeyGesture tomuto KeyBinding.

Modifiers

Získá nebo nastaví ModifierKeys přidružené k KeyGesture tomuto KeyBinding.

Metody

Name Description
CheckAccess()

Určuje, zda volající vlákno má přístup k tomuto DispatcherObject.

(Zděděno od DispatcherObject)
ClearValue(DependencyProperty)

Vymaže místní hodnotu vlastnosti. Vlastnost, která se má vymazat, je určena identifikátorem DependencyProperty .

(Zděděno od DependencyObject)
ClearValue(DependencyPropertyKey)

Vymaže místní hodnotu vlastnosti jen pro čtení. Vlastnost, která má být vymazána, je určena parametrem DependencyPropertyKey.

(Zděděno od DependencyObject)
Clone()

Vytvoří upravitelný klon objektu Freezable, vytváření hlubokých kopií hodnot objektu. Při kopírování vlastností závislostí objektu tato metoda kopíruje výrazy (které se už nemusí překládat), ale ne animace nebo jejich aktuální hodnoty.

(Zděděno od Freezable)
CloneCore(Freezable)

Zkopíruje základní (ne animované) hodnoty vlastností zadaného objektu.

(Zděděno od InputBinding)
CloneCurrentValue()

Vytvoří upravitelný klon (hloubkovou Freezable kopii) pomocí aktuálních hodnot.

(Zděděno od Freezable)
CloneCurrentValueCore(Freezable)

Zkopíruje aktuální hodnoty vlastností zadaného objektu.

(Zděděno od InputBinding)
CoerceValue(DependencyProperty)

Převede hodnotu zadané vlastnosti závislosti. Toho se dosahuje vyvoláním jakékoli CoerceValueCallback funkce zadané v metadatech vlastností pro vlastnost závislosti, protože existuje ve volání DependencyObject.

(Zděděno od DependencyObject)
CreateInstance()

Inicializuje novou instanci Freezable třídy.

(Zděděno od Freezable)
CreateInstanceCore()

Vytvoří instanci objektu KeyBinding.

Equals(Object)

Určuje, zda je poskytnutá DependencyObject hodnota ekvivalentní aktuálnímu DependencyObject.

(Zděděno od DependencyObject)
Freeze()

Nastaví aktuální objekt jako nemodifikovatelný a nastaví jeho IsFrozen vlastnost na true.

(Zděděno od Freezable)
FreezeCore(Boolean)

Freezable Znepřístupňuje objekt nebo testuje, zda je možné ho upravit.

(Zděděno od Freezable)
GetAsFrozen()

Vytvoří zablokovanou kopii Freezablevlastnosti , pomocí základních (ne animovaných) hodnot vlastností. Vzhledem k tomu, že je kopie zablokovaná, všechny ukotvené dílčí objekty se zkopírují odkazem.

(Zděděno od Freezable)
GetAsFrozenCore(Freezable)

Vytvoří instanci zablokovaným klonem zadaného Freezable pomocí základních (ne animovaných) hodnot vlastností.

(Zděděno od InputBinding)
GetCurrentValueAsFrozen()

Vytvoří ukotvenou kopii s použitím aktuálních Freezable hodnot vlastností. Vzhledem k tomu, že je kopie zablokovaná, všechny ukotvené dílčí objekty se zkopírují odkazem.

(Zděděno od Freezable)
GetCurrentValueAsFrozenCore(Freezable)

Vytvoří aktuální instanci zmrazený klon zadaného Freezable. Pokud má objekt animované vlastnosti závislostí, jejich aktuální animované hodnoty se zkopírují.

(Zděděno od InputBinding)
GetHashCode()

Získá hash kód pro tento DependencyObject.

(Zděděno od DependencyObject)
GetLocalValueEnumerator()

Vytvoří specializovaný enumerátor pro určení, které vlastnosti závislosti mají místně nastavené hodnoty na tomto DependencyObject.

(Zděděno od DependencyObject)
GetType()

Získá Type aktuální instance.

(Zděděno od Object)
GetValue(DependencyProperty)

Vrátí aktuální efektivní hodnotu vlastnosti závislosti na této instanci objektu DependencyObject.

(Zděděno od DependencyObject)
InvalidateProperty(DependencyProperty)

Znovu vyhodnotí efektivní hodnotu pro zadanou vlastnost závislosti.

(Zděděno od DependencyObject)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Object.

(Zděděno od Object)
OnChanged()

Volá se při změně aktuálního Freezable objektu.

(Zděděno od Freezable)
OnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty)

Tento člen podporuje infrastrukturu Windows Presentation Foundation (WPF) a není určená k použití přímo z vašeho kódu.

(Zděděno od Freezable)
OnFreezablePropertyChanged(DependencyObject, DependencyObject)

Zajišťuje, aby byly pro datový člen, který byl právě nastaven, vytvořeny DependencyObjectType příslušné kontextové ukazatele.

(Zděděno od Freezable)
OnPropertyChanged(DependencyPropertyChangedEventArgs)

Vyvolána vždy, když byla aktualizována efektivní hodnota jakékoli vlastnosti závislosti na této DependencyObject vlastnosti. Konkrétní vlastnost závislosti, která se změnila, je hlášena v datech události.

(Zděděno od DependencyObject)
OnPropertyChanged(DependencyPropertyChangedEventArgs)

Přepíše implementaci DependencyObjectOnPropertyChanged(DependencyPropertyChangedEventArgs) také vyvolat všechny Changed obslužné rutiny v reakci na měnící se závislost vlastnost typu Freezable.

(Zděděno od Freezable)
ReadLocalValue(DependencyProperty)

Vrátí místní hodnotu vlastnosti závislosti, pokud existuje.

(Zděděno od DependencyObject)
ReadPreamble()

Zajišťuje, že se k němu Freezable přistupuje z platného vlákna. Dědiče Freezable této metody musí volat tuto metodu na začátku jakéhokoli rozhraní API, které čte datové členy, které nejsou vlastnostmi závislosti.

(Zděděno od Freezable)
SetCurrentValue(DependencyProperty, Object)

Nastaví hodnotu vlastnosti závislosti beze změny jejího zdroje hodnot.

(Zděděno od DependencyObject)
SetValue(DependencyProperty, Object)

Nastaví místní hodnotu vlastnosti závislosti určenou jeho identifikátorem vlastnosti závislosti.

(Zděděno od DependencyObject)
SetValue(DependencyPropertyKey, Object)

Nastaví místní hodnotu vlastnosti závislosti jen pro čtení určenou identifikátorem DependencyPropertyKey vlastnosti závislosti.

(Zděděno od DependencyObject)
ShouldSerializeProperty(DependencyProperty)

Vrátí hodnotu, která určuje, zda procesy serializace mají serializovat hodnotu pro zadanou vlastnost závislosti.

(Zděděno od DependencyObject)
ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)
VerifyAccess()

Vynucuje, že volající vlákno má přístup k tomuto DispatcherObject.

(Zděděno od DispatcherObject)
WritePostscript()

Changed Vyvolá událost pro událost Freezable a vyvolá její OnChanged() metodu. Třídy odvozené z Freezable by měly volat tuto metodu na konci jakéhokoli rozhraní API, které upravuje členy třídy, které nejsou uloženy jako vlastnosti závislosti.

(Zděděno od Freezable)
WritePreamble()

Ověřuje, že Freezable není zablokovaný a že k němu přistupujete z platného kontextu podprocesu. Freezable dědiče by měly tuto metodu volat na začátku jakéhokoli rozhraní API, které zapisuje do datových členů, které nejsou vlastnostmi závislosti.

(Zděděno od Freezable)

Událost

Name Description
Changed

Nastane, když Freezable je objekt, který obsahuje, změněn.

(Zděděno od Freezable)

Platí pro

Viz také