2011-04-06 55 views
1

在使用Windows窗體設計一個dialerPad窗體時,有一個文本框應該只帶數字而不是文本,我的問題是當我添加代碼在C#「DialPad.Designer.CS」中註冊一個KeyPress事件方法

private void txtDialedNumber_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e) 
{ 
    //Blaah Blaah Code; 
} 

但它沒有獲得註冊在另一個DialPad.Designer.CS頁面。例如休閒代碼寄存器TextChangedEvent

this.txtDailedNumber.TextChanged += new System.EventHandler(this.txtDailedNumber_TextChanged); 

有人能幫助我嗎?

+1

你的問題不太清楚。你能分享一些更多的代碼,並告訴我們它到底失敗了嗎?你也應該重申你的問題。就我所知,這個問題中沒有關於vb或wpf的內容。 – 2011-04-06 05:30:55

+0

請明確提及 - 它是表單,文本框還是按鈕上的按鍵事件? – Marshal 2011-04-06 05:59:02

+1

@Niraj:這顯然是一個TextBox。 – 2011-04-06 06:05:02

回答

1

我會盡量簡化Greg的答案。

選中文本框>進入屬性>事件選項卡>按鍵事件>選擇方法this.txtDailedNumber.KeyPress

你完成了。

+0

這就是我想要的..謝謝..尼拉吉從下一次我會做我的問題說清楚... :) – 2011-04-06 06:32:24

+0

@Chandu:將其標記爲答案,表決如果它有幫助的話。 – Marshal 2011-04-06 06:33:09

+0

當然..謝謝..這非常有幫助 – 2011-04-06 07:27:34

4

您不應該手動更改* .designer.cs文件。

什麼,你應該做的是打開你的表單的設計視圖,選擇對象,然後設置中的對象屬性的事件處理程序:

enter image description here

另外,如果你想註冊事件處理程序手動(而不是使用設計器),只需將它放在窗體的構造函數的InitializeComponent()調用下。

+0

他沒有更改任何設計器代碼。他只是提到設計師說的事件處理函數。 – Marshal 2011-04-06 06:00:02

+0

@Niraj:我沒有說他做過......答案仍然適用不是嗎? – 2011-04-06 06:04:43

+0

是的,它適用,我收回我的評論。我的錯誤:) – Marshal 2011-04-06 06:09:25