在GridView中使用自定义模板,在自定义模板中加入一个LinkButton按钮(lnkBtnEdit),假设该按钮用于链接跳转到编辑页面。在模板中双击该按钮,跳转到.cs页面。现在得问题是我们如何获得该条信息的ID,如果不知道ID值,我们又怎么知道需要编辑的是哪一条信息呢?好,下面这个方法就可以:
一、在lnkBtnEdit控件中加入属性CommandArgument和CausesValidation,添加后如下:
<asp:TemplateField HeaderText="编辑">
<ItemTemplate>
<asp:LinkButton ID="lnkBtnEdit" CommandArgument='<%# eval_r("newsid")%>' CausesValidation="false" runat="server" OnClick="lnkBtnEdit_Click">编辑</asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
这里的newsid就是你在数据库中定义的ID字段。
二、在cs文件中获取该ID值,代码如下:
protected void lnkBtnEdit_Click(object sender, EventArgs e)
{
string editId = (((LinkButton)sender).CommandArgument.ToString()).ToString();
string editURL = "newseditDO.aspx?newsid=" + editId;
Response.Redirect(editURL);
}
呵呵,好了,页面跳转实现。信息删除也一样,不外乎传递一个信息ID嘛,使用同样的方法,获得ID,然后写个方法利用该ID作为参数,删掉就行了。当然,考虑安全因素,你可以带上session参数。