none
如何在VS2005中能執行LostFocus事件 RRS feed

  • 問題

  • 各位好,小弟在VS2005 中,有一個textbox,我想要在焦點離開的時候,先存一下表頭。

    我在事件leave中設定了呼件執行的程式,但執行時會出現不能是null,好像是焦點離開時,資料還沒到datasource中的感覺。

    但是如果把儲存的程序放在個按鈕中,打完textbox去按按鈕,是可以正確儲存的,我在VS2005的介面中找不到lostfocus 事件,直接在程式碼中加入也不會執行。

    麻煩請各位先進指導一下,謝謝

    2007年4月25日 上午 10:50

解答

  • 1. TextBox建議用Validated或Validating這兩個事件去處理看看,這兩個事件是在輸入完後,焦點移開後所會觸發的事件. 也可以在這個地方做一些驗證,例如不可以空白. Validating是驗證完成前,Validated是完成後,所以你的存檔部份,可以寫在Validated這. 資料驗證可以寫在Validating.

    參考MSDN : http://msdn2.microsoft.com/zh-tw/library/system.windows.forms.control.validated(VS.80).aspx

    2. (在事件leave中設定了呼件執行的程式,但執行時會出現不能是null ) 這部份要看一下你的程式碼是怎麼寫的.

    2007年4月26日 上午 12:34

所有回覆

  • Hi,

    一般會將Text屬性binding到對應的資料庫欄位,之後對textbox的變更便會自動帶到資料來源中;

    不太確定您發生問題的部分,能夠提供程式碼參考看看嗎?

    2007年4月25日 下午 02:12
  • 1. TextBox建議用Validated或Validating這兩個事件去處理看看,這兩個事件是在輸入完後,焦點移開後所會觸發的事件. 也可以在這個地方做一些驗證,例如不可以空白. Validating是驗證完成前,Validated是完成後,所以你的存檔部份,可以寫在Validated這. 資料驗證可以寫在Validating.

    參考MSDN : http://msdn2.microsoft.com/zh-tw/library/system.windows.forms.control.validated(VS.80).aspx

    2. (在事件leave中設定了呼件執行的程式,但執行時會出現不能是null ) 這部份要看一下你的程式碼是怎麼寫的.

    2007年4月26日 上午 12:34
  • 感謝您的回覆,設定在Validated中已經可以使用了
    2007年4月26日 上午 01:38