如何在按钮单击时将gridview设置为编辑模式,而不是使用commandname

时间:2013-02-23 04:37:34

标签: c# asp.net gridview

大家好,我有一个模板字段,如下所示,带有itemtemplate

<asp:TemplateField HeaderText="Edit/Delete">
 <ItemTemplate>
     <asp:LinkButton ID="lnkEdit" runat="server" Text="Edit" OnClick=lnkEdit_Click">     </asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>

一般情况下,我们会使用Click事件而不是CommandName="Edit"事件来编写OnRowEditing事件,而是使用以下代码将gridview行设置为编辑模式

protected void grdDemo_RowEditing(object sender, GridViewEditEventArgs e)
    {
        grdDemo.EditIndex = e.NewEditIndex;
        bindGrid();
    }

而不是这样我会在链接按钮点击时将gridview行设置为编辑模式,我们怎么能这样做呢

2 个答案:

答案 0 :(得分:1)

由于您希望忽略命令名,因此可以使用其他几个选项:)

  1. Click anywhere to activate edit mode in gridview

  2. Activate Edit mode based on ID - Datakey

  3. 将EditIndex属性设置为适当的行,然后再将GridVIew重新绑定到它的DataSource。

    protected void btnEdit_Click(object sender, EventArgs e)
    
     {
      GridView1.EditIndex = 1;
     }
    
  4. Google / Bing了解更多..

答案 1 :(得分:0)

您可以按如下方式使用编辑项目模板

以下是示例aspx代码

    <ItemTemplate>
    <asp:LinkButton ID="lblSubject"  Width="100%" Height="100%"  CommandName="Edit"   ForeColor="Black" runat="server" Text='<%#Bind("Subject") %>'>
  </asp:LinkButton>
   </ItemTemplate>
   <EditItemTemplate>
  <asp:TextBox ID="lblSubject" runat="server" Text='<%#Bind("Subject") %>'>
       </asp:TextBox>
    </EditItemTemplate>