我想在切換(切換)模式下工作,當我按下一個鍵時,我真的不知道該怎麼做。我嘗試了很多方法,只有「RegisterHotKey」方法工作正常。但是「RegisterHotKey」覆蓋了遊戲中映射的密鑰,這不是我所需要的。所以我試圖使用「GetKeyState」。下面的代碼只能用於一個位置,不管我改變什麼...:在c#中切換狀態 - wpf
private void mw_KeyDown(object sender, KeyEventArgs e){
bool sw = (toggle = !toggle);
int tog = (GetKeyState(Key.Tab));
if ((tog & 1) == 1)
{
if (sw)
{
System.Windows.MessageBox.Show("go to second position...!");
}
}
else
{
System.Windows.MessageBox.Show("go to first position...!");
}
}
任何想法或建議我該怎麼做?
謝謝
你可以聲明一個布爾值,作爲類的成員變量,它代表了它的狀態。並更新鍵中的值切換 –
我有這個,但仍然不工作:公共部分類MainWindow:Window { private bool toggle = false; } – user2558921
我在視圖中使用了ToggleButton,並將'IsChecked'屬性綁定到視圖模型中的布爾值,並且您可以使用相同的概念將隱喻轉換爲關鍵筆劃。我會對在事件處理程序中使用消息框持懷疑態度,因爲它們會破壞鍵盤焦點! –