所以我正在製作一個表單,並且我想讓左右鍵只對應於我在表單上的numericUpDown框。所以我寫的代碼如下:停止使用ProcessCmdKey在C#中觸發事件的密鑰?
protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
{
if (keyData == Keys.Right)
{
numericUpDown1.Value = Convert.ToDecimal(numericUpDown1.Value + 1);
}
if (keyData == Keys.Left)
{
try
{
numericUpDown1.Value = Convert.ToDecimal(numericUpDown1.Value - 1);
}
catch { }
}
return base.ProcessCmdKey(ref msg, keyData);
}
但是它似乎還在做形式不同對象之間移動如果是這樣的選擇的觀點是什麼目前的默認操作。如何停止默認操作?
做你嘗試 「返回true;」對於您不希望處理繼續的情況? – deepee1
你的代碼甚至不會編譯。你應該返回一個bool的方法中沒有返回語句。 – tnw
不,我沒有迴歸真實......這似乎在大多數時間都有效(除非我很快按下按鍵)......它不是那種打破了形式的東西,所以如果有人決定偶爾做它。謝謝! – user2678856