KeyBinding Osztály
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
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ítja |
| 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) |