資料驗證範例
更新:2007 年 11 月
這個範例會示範 [DataSet 設計工具],並使用 PropertyChanged 事件來驗證使用者輸入。
若要取得範例及其安裝指示
請執行下列其中一項或多項作業:
按一下 [說明] 功能表上的 [範例]。
讀我檔案會顯示範例的相關資訊。
造訪 Visual Studio 2008 範例 網站 (英文)。您可以在此找到最新版的範例。
在已安裝 Visual Studio 的電腦中尋找範例。根據預設,範例和讀我檔案會安裝在 drive:\Program Files\Microsoft Visual Studio 9.0\Samples\lcid 中。如果是 Visual Studio Express 版,則所有範例都能在線上找到。
如需詳細資訊,請參閱尋找範例檔案。
安全性注意事項: |
---|
範例程式碼可說明整個概念,並顯示和此概念相關的程式碼。此程式碼可能不符合特定環境的安全性要求,您也不應該以範例所示的方法使用此程式碼。我們建議您新增安全性及錯誤處理程式碼,讓您的專案更安全完善。Microsoft 提供的程式碼未經修改,並且不對任何可能造成的後果負任何責任。 |
若要執行這個範例
- 按 F5。
需求
這個範例需要 Northwind 範例資料庫。如需詳細資訊,請參閱 HOW TO:安裝和疑難排解範例的資料庫元件。
示範
這個範例會示範可在 Visual Studio 設計工具中使用的資料驗證功能。兩個任意和虛構的規則是用於驗證資料。使用 [DataSet 設計工具] 加入程式碼。按兩下資料行名稱會建立資料行變更的事件。按兩下欄位清單會建立資料列變更的事件。然後,會在那些事件處理常式中,加入程式碼以驗證建議的值:
Private Sub EmployeeDataTable_BirthDateChanging( _
ByVal sender As EmployeeDataTable, _
ByVal e As BirthDateChangeEventArg) Handles Me.BirthDateChanging
Dim minimumAgeDate As New DateTime(DateTime.Now().Year - 18, _
DateTime.Now().Month, DateTime.Now().Day)
If e.ProposedValue > minimumAgeDate Then
e.Row.SetColumnError(e.BirthDateColumn, _
"Employees must be at least 18 years of age.")
Else
e.Row.SetColumnError(e.BirthDateColumn, "")
End If
End Sub
Private Sub EmployeesDataTable_EmployeesRowChanging( _
ByVal sender As System.Object, ByVal e As _
EmployeesRowChangeEvent) Handles Me.EmployeesRowChanging
If (e.Row.BirthDate = e.Row.HireDate) Then
e.Row.RowError = e.Row.RowError & _
"Birth date and hire date are the same."
Else
e.Row.ClearErrors()
End If
End Sub
定義資料列和資料行錯誤時,DataGridView 控制項會顯示警告圖示。若是資料列錯誤,圖示會顯示在資料列的左邊。若是資料行錯誤,圖示會顯示於儲存格中。