【问题标题】:gridview control - RowEditing event - second clickgridview 控件 - RowEditing 事件 - 第二次单击
【发布时间】:2012-02-05 00:10:24
【问题描述】:

在 gridview 控件中,我正在使用 RowEditingevent。我创建了一个命令字段来处理插入、取消和更新。

问题:当点击编辑(manage.jpg)时,它没有在编辑模式下显示。如果我再单击一次,在同一个编辑中,它会显示要编辑的数据字​​段。我不明白为什么它没有响应第一次点击事件。

    <asp:CommandField 
           ShowEditButton="true"
           ShowCancelButton="True"
           ButtonType="Image" 
           EditImageUrl="manage.jpg"
           HeaderText="Edit" 
           UpdateImageUrl="insert.jpg" 
           CancelImageUrl="cancel.png"
           ItemStyle-Width="10px" >
           <ItemStyle Width="20px" Height="20px"></ItemStyle>
          </asp:CommandField>

    protected void gridFavoriteAddress_RowEditing(object sender, GridViewEditEventArgs e)     {
        gridFavoriteAddress.EditIndex = e.NewEditIndex;
        //gridFavoriteAddress.DataBind();
    }

【问题讨论】:

  • 事件是否仅在第二次点击时触发 - 只是为了清楚。谢谢

标签: asp.net c#-4.0 gridview


【解决方案1】:

只是一些想法

  1. 当您第一次单击编辑时,会在编辑事件触发之前重新绑定网格。我知道会扰乱事件模型

  2. 尝试在命令字段中添加CausesValidation="false",以防第一次验证失败

  3. 尝试重新编码以在TemplateColumn 中使用ImageButtonCommandName="Edit"。这也应该触发行编辑事件。那个有用吗?

  4. 这太疯狂了 - 但是您在命令按钮中的样式(宽度)存在冲突。我只会删除。我知道这不可能导致它,但我会确保一切都完全按照它应该的方式进行

【讨论】:

    【解决方案2】:

    ===> //gridFavoriteAddress.DataBind();

    取消注释 ==> gridFavoriteAddress.DataBind();

    绑定网格将解决问题..

    【讨论】:

      猜你喜欢
      • 2012-09-10
      • 1970-01-01
      • 1970-01-01
      • 2011-12-18
      • 2017-07-03
      • 2017-04-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多