KeyBinding Osztály

Definíció

Az a-t KeyGesture egy RoutedCommand (vagy egy másik ICommand implementációhoz) köti.

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
Öröklődés
Öröklődés

Példák

Az alábbi példa létrehoz és KeyBinding hozzáadja azt a InputBindingCollection gyökérablakhoz.

<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)

Megjegyzések

A KeyBinding társít egy KeyGestureICommand, például egy RoutedCommand. RoutedCommand a ICommand interfész elsődleges megvalósítása a WPF parancsrendszerhez. A parancs végrehajtásakor általában meghívja KeyGesture a parancsot, bár a parancs viselkedését tovább befolyásolják a parancsspecifikus tényezők, például az CanExecute érték. A parancsolással kapcsolatos további információkért tekintse meg a parancsolás áttekintését.

A függvénykulcsok és a numerikus billentyűzetbillentyűk kivételével az érvényesnek KeyGesture pontosan egy Key és egy vagy több ModifierKeysazonosítót kell tartalmaznia. A függvénykulcsok és a numerikus billentyűzetkulcsok nem igényelnek módosító kulcsot ahhoz, hogy érvényesek KeyGesturelegyenek. Megadhat egy érvénytelen KeyGesture és egy KeyBinding érvénytelen társított kézmozdulatot XAML vagy kód használatával. Nincs például olyan ellenőrzés, amely meggátolja a csak nem funkciókulcsot tartalmazó, vagy csak módosítókat, de kulcs nélküli elemek létrehozását és kötését KeyGesture . Ez a KeyBinding parancs soha nem próbálja meg meghívni a hozzá tartozó parancsot.

Az XAML (Extensible Application Markup Language, XAML) nyelv definiálásakor KeyBinding kétféleképpen adható meg a KeyGesture. Az XAML-ben KeyBinding az első módszer az elem attribútumának Gesture meghatározásaKeyBinding, amely lehetővé teszi, hogy a szintaxis egyetlen sztringként adja meg a kulcsokat és módosítókat, például "CTRL+P". A második módszer az elem attribútumának Key és Modifiers attribútumainak KeyBinding meghatározása. A beállítás KeyGesture mindkét módja megegyezik, és ugyanazt az alapul szolgáló objektumot módosítja, de mindkettő használata esetén ütközés lép fel. Abban az esetben, ha a Key, és az Modifiers attribútumok mind be vannak állítva, a legutóbb definiált attribútum lesz használva a GestureKeyGesture. Előfordulhatnak olyan helyzetek, amikor például egy Key utolsó készlet felülírja az előző kézmozdulatok kulcsösszetevőjét, de a kézmozdulatok módosítói változatlanok maradnak. Általában ajánlott csak az XAML attribútumát használni; ez elkerüli a Gesture kétértelműséget, a leggördülékenyebb szintaxist nyújtja, és a szerializálás legegyszerűbb ábrázolását biztosítja.

A KeyBinding definiálható egy adott objektumon vagy az osztály szintjén az osztályon RegisterClassInputBinding való regisztrálássalCommandManager. A legáltalánosabban a vezérlősablonon belül definiálhatja KeyBinding a tulajdonságot az XAML-ben egy vagy InputBindings több MouseBinding elem deklarálásával.KeyBinding

Konstruktorok

Name Description
KeyBinding()

Inicializálja a KeyBinding osztály új példányát.

KeyBinding(ICommand, Key, ModifierKeys)

Inicializálja az osztály új példányát a KeyBinding megadott ICommand és a megadott Key érték használatával, és ModifierKeys amelyet a rendszer átalakít egy KeyGesture.

KeyBinding(ICommand, KeyGesture)

Inicializálja az osztály új példányát a KeyBinding megadott ICommand és KeyGesturea .

Mezők

Name Description
KeyProperty

Azonosítja a Key függőségi tulajdonságot.

ModifiersProperty

Azonosítja a Modifiers függőségi tulajdonságot.

Tulajdonságok

Name Description
CanFreeze

Olyan értéket kap, amely jelzi, hogy az objektum módosítható-e.

(Öröklődés forrása Freezable)
Command

Lekéri vagy beállítja a ICommand bemeneti kötéshez társított értéket.

(Öröklődés forrása InputBinding)
CommandParameter

Lekéri vagy beállítja egy adott parancs parancsspecifikus adatait.

(Öröklődés forrása InputBinding)
CommandTarget

Lekéri vagy beállítja a parancs célelemét.

(Öröklődés forrása InputBinding)
DependencyObjectType

Lekéri a DependencyObjectType példány CLR-típusát körbefuttatót.

(Öröklődés forrása DependencyObject)
Dispatcher

Lekérdezi, Dispatcher hogy ez a társítva van-e DispatcherObject .

(Öröklődés forrása DispatcherObject)
Gesture

Lekéri vagy beállítja az ehhez KeyBindingtársított kézmozdulatot.

IsFrozen

Olyan értéket kap, amely jelzi, hogy az objektum jelenleg módosítható-e.

(Öröklődés forrása Freezable)
IsSealed

Olyan értéket kap, amely jelzi, hogy a példány jelenleg zárolva van-e (írásvédett).

(Öröklődés forrása DependencyObject)
Key

Lekéri vagy beállítja a KeyKeyGesture társított fájlokat.KeyBinding

Modifiers

Lekéri vagy beállítja a ModifierKeysKeyGesture társított fájlokat.KeyBinding

Metódusok

Name Description
CheckAccess()

Meghatározza, hogy a hívó szál hozzáfér-e ehhez DispatcherObject.

(Öröklődés forrása DispatcherObject)
ClearValue(DependencyProperty)

Törli egy tulajdonság helyi értékét. A törölni kívánt tulajdonságot egy DependencyProperty azonosító határozza meg.

(Öröklődés forrása DependencyObject)
ClearValue(DependencyPropertyKey)

Törli egy írásvédett tulajdonság helyi értékét. A törölni kívánt tulajdonságot egy DependencyPropertyKey.

(Öröklődés forrása DependencyObject)
Clone()

Módosítható klónt hoz létre az Freezableobjektumról, amely az objektum értékeinek részletes másolatát készíti el. Az objektum függőségi tulajdonságainak másolásakor ez a metódus kifejezéseket másol (amelyek már nem oldhatók fel), de nem animációkat vagy azok aktuális értékeit.

(Öröklődés forrása Freezable)
CloneCore(Freezable)

Másolja a megadott objektum tulajdonságainak alapértékét (nem animált).

(Öröklődés forrása InputBinding)
CloneCurrentValue()

Módosítható klónt (mély másolatot) hoz létre az Freezable aktuális értékek használatával.

(Öröklődés forrása Freezable)
CloneCurrentValueCore(Freezable)

Másolja a megadott objektum tulajdonságainak aktuális értékeit.

(Öröklődés forrása InputBinding)
CoerceValue(DependencyProperty)

A megadott függőségi tulajdonság értékét kényszeríti. Ez úgy érhető el, hogy meghívja a függőségi tulajdonság tulajdonság metaadataiban megadott függvényeket CoerceValueCallback a hívás DependencyObjectsorán.

(Öröklődés forrása DependencyObject)
CreateInstance()

Inicializálja a Freezable osztály új példányát.

(Öröklődés forrása Freezable)
CreateInstanceCore()

Létrehoz egy példányt.KeyBinding

Equals(Object)

Meghatározza, hogy a megadott DependencyObject érték megegyezik-e az aktuális DependencyObjectértékével.

(Öröklődés forrása DependencyObject)
Freeze()

Az aktuális objektum nem módosítható, és a tulajdonságát a következőre IsFrozenállítjatrue: .

(Öröklődés forrása Freezable)
FreezeCore(Boolean)

Freezable Az objektum nem módosíthatóvá válik, vagy teszteli, hogy módosítható-e.

(Öröklődés forrása Freezable)
GetAsFrozen()

Az alaptulajdonságok Freezable(nem animált) értékeinek egy fagyasztott másolatát hozza létre. Mivel a másolat le van fagyasztva, a program hivatkozással másolja a befagyott alobjektumokat.

(Öröklődés forrása Freezable)
GetAsFrozenCore(Freezable)

A példányt alap (nem animált) tulajdonságértékek használatával a megadott Freezable zárolt klónává teszi.

(Öröklődés forrása InputBinding)
GetCurrentValueAsFrozen()

Az aktuális tulajdonságértékek fagyasztott másolatát Freezable hozza létre. Mivel a másolat le van fagyasztva, a program hivatkozással másolja a befagyott alobjektumokat.

(Öröklődés forrása Freezable)
GetCurrentValueAsFrozenCore(Freezable)

Az aktuális példányt a megadott Freezablezárolt klónává teszi. Ha az objektum animált függőségi tulajdonságokkal rendelkezik, a program átmásolja az aktuális animált értékeket.

(Öröklődés forrása InputBinding)
GetHashCode()

Ehhez lekéri a DependencyObjectkivonatkódot.

(Öröklődés forrása DependencyObject)
GetLocalValueEnumerator()

Létrehoz egy speciális enumerátort annak meghatározásához, hogy mely függőségi tulajdonságok rendelkeznek helyileg beállított értékekkel.DependencyObject

(Öröklődés forrása DependencyObject)
GetType()

Lekéri az Type aktuális példányt.

(Öröklődés forrása Object)
GetValue(DependencyProperty)

Egy függőségi tulajdonság aktuális tényleges értékét adja vissza az adott példányon DependencyObject.

(Öröklődés forrása DependencyObject)
InvalidateProperty(DependencyProperty)

Újra kiértékeli a megadott függőségi tulajdonság tényleges értékét.

(Öröklődés forrása DependencyObject)
MemberwiseClone()

Az aktuális Objectpéldány sekély másolatát hozza létre.

(Öröklődés forrása Object)
OnChanged()

Az aktuális Freezable objektum módosításakor hívható meg.

(Öröklődés forrása Freezable)
OnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty)

Ez a tag támogatja a Windows megjelenítési alaprendszer (WPF) infrastruktúrát, és nem közvetlenül a kódból való használatra szolgál.

(Öröklődés forrása Freezable)
OnFreezablePropertyChanged(DependencyObject, DependencyObject)

Biztosítja, hogy a megfelelő környezeti mutatók létre legyenek hozva az DependencyObjectType éppen beállított adattagok számára.

(Öröklődés forrása Freezable)
OnPropertyChanged(DependencyPropertyChangedEventArgs)

Akkor hívjuk meg, ha az adott DependencyObject függőségi tulajdonság tényleges értéke frissült. A módosított függőségi tulajdonságot az eseményadatok jelentik.

(Öröklődés forrása DependencyObject)
OnPropertyChanged(DependencyPropertyChangedEventArgs)

Felülbírálja a DependencyObject változó típusú függőségi tulajdonságra válaszul a kezelők meghívásának OnPropertyChanged(DependencyPropertyChangedEventArgs)Changedvégrehajtását Freezable is.

(Öröklődés forrása Freezable)
ReadLocalValue(DependencyProperty)

Egy függőségi tulajdonság helyi értékét adja vissza, ha létezik.

(Öröklődés forrása DependencyObject)
ReadPreamble()

Biztosítja, hogy a Freezable rendszer érvényes szálról legyen elérhető. A metódus öröklőinek Freezable minden olyan API elején meg kell hívniuk ezt a metódust, amely olyan adattagokat olvas be, amelyek nem függőségi tulajdonságok.

(Öröklődés forrása Freezable)
SetCurrentValue(DependencyProperty, Object)

Beállítja egy függőségi tulajdonság értékét az értékforrás módosítása nélkül.

(Öröklődés forrása DependencyObject)
SetValue(DependencyProperty, Object)

Beállítja egy függőségi tulajdonság helyi értékét, amelyet a függőségi tulajdonság azonosítója határoz meg.

(Öröklődés forrása DependencyObject)
SetValue(DependencyPropertyKey, Object)

Beállítja egy írásvédett függőség tulajdonság helyi értékét, amelyet a DependencyPropertyKey függőségi tulajdonság azonosítója határoz meg.

(Öröklődés forrása DependencyObject)
ShouldSerializeProperty(DependencyProperty)

Olyan értéket ad vissza, amely jelzi, hogy a szerializálási folyamatok szerializálják-e a megadott függőségi tulajdonság értékét.

(Öröklődés forrása DependencyObject)
ToString()

Az aktuális objektumot jelképező sztringet ad vissza.

(Öröklődés forrása Object)
VerifyAccess()

Kényszeríti, hogy a hívószál hozzáférhessen ehhez.DispatcherObject

(Öröklődés forrása DispatcherObject)
WritePostscript()

Elindítja az Changed eseményt, Freezable és meghívja annak metódusát OnChanged() . A származtatott Freezable osztályoknak ezt a metódust minden olyan API végén kell meghívni, amely módosítja a nem függőségi tulajdonságokként tárolt osztálytagokat.

(Öröklődés forrása Freezable)
WritePreamble()

Ellenőrzi, hogy a Freezable rendszer nem zárolta-e a elemet, és hogy az érvényes szálkezelési környezetből van-e elérhető. Freezable Az öröklőknek ezt a metódust minden olyan API elején kell meghívni, amely nem függőségi tulajdonságokat tartalmazó adattagoknak ír.

(Öröklődés forrása Freezable)

esemény

Name Description
Changed

Akkor fordul elő, ha a Freezable benne lévő objektum vagy objektum módosul.

(Öröklődés forrása Freezable)

A következőre érvényes:

Lásd még