2012-02-29 48 views
0

我有一個包含一個文本框和一些按鈕的工具條就可以了windows窗體(想想瀏覽器地址欄與開始按鈕,向後,向前)如何指定AcceptsReturn引用的TextBox的默認按鈕?

我想按下Enter鍵來激活goButton就像單擊它會,我相信是TextBox.AcceptsReturn = false是。

我沒有看到任何似乎符合法案的東西,「告訴我表單上的按鈕是我們要激活的那個按鈕」。

我錯過了什麼?

回答

2

A Form有一個默認按鈕,但一個特定的控件不會(開箱即用)。

在你的場景中,我可能會通過監視按下等待Enter鍵被按下的鍵來處理調用goButton.Click事件。

+0

我在我的構造函數中添加了一個處理程序('this.myTextBox.KeyDown + = new KeyEventHandler(urlTextBox_KeyDown);'),並添加了一個方法來檢查KeyEventArgs的輸入鍵。謝謝 – Stephen 2012-02-29 20:48:03

+1

我沒有直接調用click處理程序事件,而是調用了'goButton.PerformClick()',以便將來需要更多信息的任何人使用。 – Stephen 2012-02-29 20:59:13

+0

是的,這是正確的做法。 – 2012-02-29 21:19:48

0

最簡單的方法是將窗體「接受按鈕」設置爲所需的按鈕控件。這可以在設計者中完成。

+0

有可能我會有多個文本框,並希望它們激活不同的按鈕,所以雖然此信息可能對未來有用,但它不能解決我今天的問題。 – Stephen 2012-02-29 20:45:25

+1

好的。就像其他人說的一樣。這可以在你的代碼中用evenHandlers完成。 – Botonomous 2012-02-29 21:07:14

0

我知道這是一個老問題,但對於某人誰可能以懶惰或只是一個初學者, 處理程序可能看起來像太多的工作(雖然它是不是真的)

但還有一個更簡單爲此,你可以爲每個面板設置一個面板(例如1個文本框和1個按鈕),並根據需要爲每個面板設置Defaultbutton。

我用這個爲我的網站,我有幾個Ajax面板,我想每個都有不同的主題有自己的搜索框,並使用輸入按鈕。