我在控制面板上有一些控件,我試圖用「刪除」按鈕刪除它們。我處理了How to get Keypress event in Windows Panel control in C# 中提到的KeyPress事件,並且我按下了按鈕(A-Z和1-9)的事件,但沒有按下Delete,Control/Alt/Shift或F1,F2 ....按鈕。在Windows面板控件中獲取刪除按鍵事件
我們是否需要爲處理這些按鈕做些特別的事情?
我在控制面板上有一些控件,我試圖用「刪除」按鈕刪除它們。我處理了How to get Keypress event in Windows Panel control in C# 中提到的KeyPress事件,並且我按下了按鈕(A-Z和1-9)的事件,但沒有按下Delete,Control/Alt/Shift或F1,F2 ....按鈕。在Windows面板控件中獲取刪除按鍵事件
我們是否需要爲處理這些按鈕做些特別的事情?
嘗試這樣的:
private void Window_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Delete)
{
e.Handled = true;
}
}
還需要設置KeyPreview
上。
只有具有*對焦*得到擊鍵控制。 Panel不喜歡重點關注。它沒有顯示它具有焦點並且不能對其進行選擇,請注意它沒有TabIndex屬性。它是一個容器控件,面板內部的任何東西都成爲焦點。爲什麼你想這樣做完全不清楚。不要使用Panel。 –
@Hans,我使用Panel來繪製一些控件。所以基本上發生的是用戶可以使用鼠標點擊來繪製任何形狀(矩形,三角形等)。現在我想要的是用戶可以使用「刪除」按鈕刪除任何選定的形狀。類似Power Point的幻燈片和I用戶面板作爲形狀的容器。 – Pankaj