启用/禁用gridview的按钮模板

时间:2011-02-09 19:23:07

标签: asp.net gridview

仅当用户修改了gridview中的数据时,如何启用删除按钮

<EditItemTemplate>
  <div class='actions'>
  <asp:Button ID="btnUpdate" runat="server" Text=" Update " ToolTip="Update Row" CommandName="Update" />&nbsp;&nbsp;&nbsp;&nbsp;
  <asp:Button ID="btnCancel" runat="server" Text=" Cancel " ToolTip="Cancel Row" CausesValidation="false"  CommandName="Cancel" />
  </div>
</EditItemTemplate>

3 个答案:

答案 0 :(得分:3)

请使用此代码。 在源文件

 <asp:CommandField ShowEditButton="true" ShowCancelButton="true" HeaderText="Edit / Delete" ItemStyle-Width="8%"
                                        ShowDeleteButton="true" ItemStyle-HorizontalAlign="Left" HeaderStyle-HorizontalAlign="Left" />

在Cs文件中

 protected void gvStatMeasures_RowEditing(object sender, GridViewEditEventArgs e)
    {
        try
        {
            gvStatMeasures.EditIndex = e.NewEditIndex;
            // Bind Grid View
        }
        catch (Exception ex)
        {
            fnMessage(true, ex.Message);
        }
    }

protected void gvStatMeasures_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
{
    try
    {
        gvStatMeasures.EditIndex = -1;
        // Bind Grid View
    }
    catch (Exception ex)
    {
        fnMessage(true, ex.Message);
    }
}



  protected void gvStatMeasures_RowDeleting(object sender, GridViewDeleteEventArgs e)
    {
        try
        {


            int iStaticTypeID = Int32.Parse(gvStatMeasures.DataKeys[e.RowIndex].Value.ToString());  // this get Datakey value of GridView as PK or else where need to identify records.

            // Delete Code
            //Bind Grid
        }
        catch (Exception ex)
        {
            fnMessage(true, ex.Message);
        }
    }

答案 1 :(得分:2)

第二种方式,

请在代码中将新按钮添加为删除,显示为False,仅在单击进行编辑时可见。 所以那个时候它看起来是真的,你也可以添加代码。

答案 2 :(得分:-1)

也许这个相关问题的答案会有所帮助:Hide Repeater columns based on user privileges

相关问题