2009-05-20 43 views
1

我窗體上的一個字段是用戶鍵入id的文本框。這是另一個表的外鍵,所以我需要在提交數據之前將數據反彈到該表。我寧願不使用textchanged,因爲他們輸入的每個字母都可能會引起另一個查詢,焦點丟失只會顯示錯誤,或者當它們已經在另一個字段中時進行驗證(不確定它們是否會在點擊提交時觸發)。對數據庫的vb.net文本框驗證?

我不希望強迫某人的焦點留在該領域,但也許這是最好的方式?

是否有一種方法可以休眠並等待X秒內是否有另一個傳入的按鍵事件?如果是的話,我可以偷看看它是一個字母或數字與一個標籤或返回?

是否有另一個事件我應該掛鉤這是用戶友好?

我應該拉下表格的那一欄的副本,並實時比較嗎? (我可以處理添加一個刷新按鈕來拉一個新的緩存)

回答

1

你可能要考慮使用計時器控制。

每次按下該鍵時禁用並啓用控件,以重置超時。

然後,當定時器事件觸發時,禁用該控件並查詢數據庫。

編輯: 我仍然認爲你最好的選擇可能是失落焦點事件。

+0

丟失的重點事件似乎在我的機器上正常運行。服務器的響應看起來很快,所以我不確定用戶機器上會發生什麼。由於在用戶嘗試將焦點切換到的位置時禁用了表單,因此我在禁用該字段時會暫時禁用該數據庫。 – Maslow 2009-05-20 21:09:09