如何验证用户输入的信息?(100分)
我正在编写一个通过数据梆定的WinForm访问数据库的程序。在用户移动纪录时我想对用户的输入进行验证。
在VB6中这个功能很容易实现,你只需响应ADODC控件的WillChangeRecord事件,如果用户输入错误则可将adStatus置为adStatusCancel,这样用户就不可能移到下一个记录了。
而在VS.Net中情况好像没有这么简单。我查了VS.net的帮助,发现需要截获dataset中的datatable的RowChanging事件,但必须通过手工的方式做
1。通过AddHandler<b>手工</b>加入事件处理
AddHandler newsTable.RowChanging, New DataRowChangeEventHandler(AddressOf NewsRow_Changing)
2。编写函数响应该事件
Private Shared Sub NewsRow_Changing(ByVal sender As Object, ByVal e As DataRowChangeEventArgs)
Dim strTitleProposed As String
strTitleProposed = CType(e.Row("Title", DataRowVersion.Proposed), String)
If strTitleProposed = "" Then
Throw (New Exception("标题不能为空!"))
End If
End Sub
VS.Net的帮助建议通过Throw Exception进行处理,但我发现该方法产生的对话框非常难看且不可定制。
我的问题是VB.Net是否提供一种像VB6一样的直接了当的方法?若没有如何对上面提到的方法进行改进?同时我发现VS.Net中的Samples非常之少,不只微软的技术支持看到这个有何感受?