.NET开发

本类阅读TOP10

·NHibernate快速指南(翻译)
·vs.net 2005中文版下载地址收藏
·【小技巧】一个判断session是否过期的小技巧
·VB/ASP 调用 SQL Server 的存储过程
·?dos下编译.net程序找不到csc.exe文件
·通过Web Services上传和下载文件
·学习笔记(补)《.NET框架程序设计(修订版)》--目录
·VB.NET实现DirectDraw9 (2) 动画
·VB.NET实现DirectDraw9 (1) 托管的DDraw
·建站框架规范书之——文件命名

分类导航
VC语言Delphi
VB语言ASP
PerlJava
Script数据库
其他语言游戏开发
文件格式网站制作
软件工程.NET开发
[整理] 在DataGrid中引发验证 -------Causesvalidation In Datagrid

作者:未知 来源:月光软件站 加入时间:2005-2-28 月光软件站

[整理] 在DataGrid中引发验证

Causesvalidation In Datagrid

 

       在我们对Datagrid进行编辑的时候,我们可能要对用户输入的数据进行验证,以确保数据的正确性、完整性。要解决这个问题有很多不同的方法,如:我们可以运用VS.NET当中的验证控件,如: RequiredFieldValidator 。这样我们便需要 DataGrid中的 Update 按钮引发验证来检验用户输入的数据是否为空。Update 按钮包含一个CausesValidation 属性。

Public Property CausesValidation() As Boolean

     成员属于: System.Web.UI.WebControls.LinkButton

 

摘要:

 获取或设置一个值,该值指示在单击 System.Web.UI.WebControls.LinkButton 控件时是否执行验证。 

 

 

我们可以利用这个属性来自由控制一个webcontrol是否引发验证。

DataGrid ItemDataBound 事件:

If (e.Item.ItemType = ListItemType.EditItem) Then

setUpdateCommandCausesValidation(e.Item, True)

End If

Private Function setUpdateCommandCausesValidation(ByVal item As DataGridItem, ByVal valor As Boolean) As String

        If (item.HasControls()) Then

            For Each celula As Control In item.Controls

                For Each possibleButton As Control In celula.Controls

                    If (possibleButton.GetType().Name.Equals("DataGridLinkButton")) Then

                        Dim lbt As LinkButton = CType(possibleButton, LinkButton)

                        If (lbt.Text.Equals(getUpdateColumnText())) Then

                            lbt.CausesValidation = valor

                            Exit For

                        End If

                    End If

                Next

            Next

        End If

    End Function

    Private Function getUpdateColumnText() As String

        Dim text As String = ""

        For Each coluna As DataGridColumn In DataGrid1.Columns

            If (coluna.GetType().Name.Equals("EditCommandColumn")) Then

                Dim colunaEdit As EditCommandColumn = CType(coluna, EditCommandColumn)

                text = colunaEdit.UpdateText

                Exit For

            End If

        Next

        Return text

    End Function




相关文章

相关软件