2017-08-25 66 views
0

我決定按我的網頁上的按鍵,但得到這樣的錯誤重複的按鈕:XAML鍵聯結1,2,3

「1」不能作爲「鑰匙」的值。數字不是有效的枚舉值。

<Page.InputBindings> 
    <KeyBinding Command="{Binding Btn_Click}" 
       CommandParameter="{Binding ElementName=btn1,Path=Content}" 
       Key="1"/> 
    <KeyBinding Command="{Binding Btn_Click}" 
       CommandParameter="{Binding ElementName=btn2,Path=Content}" 
       Key="2"/> 
    <KeyBinding Command="{Binding Btn_Click}" 
       CommandParameter="{Binding ElementName=btn3,Path=Content}" 
       Key="3"/> 
    <KeyBinding Command="{Binding Btn_Click}" 
       CommandParameter="{Binding ElementName=btn4,Path=Content}" 
       Key="4"/> 
</Page.InputBindings> 

我可以欺騙系統嗎?

回答

0

您可以使用D1,這是1密鑰的枚舉值。請參閱Key Enumeration頁面以獲取所有可能值的列表。

<KeyBinding Command="{Binding SomeCommand}" Key="D1"/> 

或只是biniding:

<KeyBinding Command="{Binding SomeCommand}" Key="{Binding MyKey}"/> 

VM:

public Key MyKey 
{ 
    get => Key.D1; 
} 

,這是因爲你不能做到像枚舉:

enum MyEnum 
{ 
    1, 
    2, 
    3 
}; 
+0

https://開頭MSDN。 microsoft.com/en-us/library/system.windows.input.key(v=vs.110).aspx – vdefeo

+0

我認爲,你提到的評論帖子不是我的anwser:d – sTrenat

+0

這只是一個額外的信息,因爲他們的鑰匙屬性是一個枚舉 – vdefeo