2013-08-20 58 views
0

这是我的代码:我必须在GridView编辑按钮点击两次

Public Sub GridView1_RowEditing(sender As Object, e As System.Web.UI.WebControls.GridViewEditEventArgs) Handles GridView1.RowEditing 
    GridView1.EditIndex = e.NewEditIndex 
    If Not IsPostBack Then 
     GridView1.DataBind() 
    End If 
End Sub 

Protected Sub GridView1_RowCancelingEdit(sender As Object, e As System.Web.UI.WebControls.GridViewCancelEditEventArgs) Handles GridView1.RowCancelingEdit 
    GridView1.EditIndex = -1 
End Sub 

Protected Sub GridView1_RowUpdating(ByVal sender As Object, ByVal e As GridViewUpdateEventArgs) Handles GridView1.RowUpdating 
    Dim strid As String = DirectCast(GridView1.Rows(e.RowIndex).FindControl("idtxt"), TextBox).Text 
    Dim strFirstName As String = DirectCast(GridView1.Rows(e.RowIndex).FindControl("fnmaetxt"), TextBox).Text 
    Dim strLastName As String = DirectCast(GridView1.Rows(e.RowIndex).FindControl("lnametxt"), TextBox).Text 
    Dim strAdress As String = DirectCast(GridView1.Rows(e.RowIndex).FindControl("adresstxt"), TextBox).Text 
    Dim strEmail As String = DirectCast(GridView1.Rows(e.RowIndex).FindControl("emtailtxt"), TextBox).Text 
    Dim strPhone As String = DirectCast(GridView1.Rows(e.RowIndex).FindControl("phonetxt"), TextBox).Text 
    Dim strBirthday As String = DirectCast(GridView1.Rows(e.RowIndex).FindControl("birthdaytxt"), TextBox).Text 


    x.updateProfile(strid, strFirstName, strLastName, strAdress, strEmail, strBirthday, strPhone) 
    If Not IsPostBack Then 
     GridView1.DataBind() 
    End If 
    GridView1.EditIndex = -1 
End Sub 

的问题是,我必须在编辑按钮点击两次进入编辑模式,并两次取消按钮回到编辑模式,当我更新时,我必须重新点击更新才能回到编辑模式,当我重新点击它时,所有字段都变为空白。

任何帮助?

+0

这看起来不像MVC。这可能是一个很大的提取,我曾经有过类似的事情,那是因为有人玩过验证的Page_BlockSubmit变量。 –

回答

0

您需要点击一次以获得焦点,然后再次执行perfrorm编辑。我为这个问题所做的解决方法是在网格中处理PreviewLeftMouseButton,我测试如果单击的元素是一个行元素,那么我有它的重点,我不要求点击处理。

相关问题