哪位大虾有没有gridview的删除示例啊?先在gridview外加个删除button , 然后加代码删除遍历gridview中checkbox中选定的记录,(其中有列是图片没在数据库里,是在其他文件夹中的)知道的帮帮忙啊 找了好久了都没这样的示例。。

解决方案 »

  1.   

    ASPX
    ------------------------
    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default7.aspx.cs" Inherits="Default7" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" >
    <head runat="server">
        <title>无标题页</title>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
    <asp:GridView ID="gvwDemo" runat="server">
    <Columns>
    <asp:TemplateField HeaderText="Select">
    <ItemTemplate>
    <asp:CheckBox runat="server" id="chkSelect">
    </asp:CheckBox>
    </ItemTemplate>
    </asp:TemplateField>
    </Columns>
    </asp:GridView>
    <asp:Button ID="btnDelete" runat="server" Text="Delete" OnClick="btnDelete_Click" />
        </div>
        </form>
    </body>
    </html>
    CS
    ------------------------------------
    using System;
    using System.Data;
    using System.Configuration;
    using System.Collections;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;public partial class Default7 : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
    if (!IsPostBack) {
    ArrayList list = new ArrayList();
    ViewState["data"] = list;
    for (int i = 0; i < 10; i++) {
    list.Add(i);
    } gvwDemo.DataSource = list;
    gvwDemo.DataBind();
    }
        }
    protected void btnDelete_Click(object sender, EventArgs e) {
    ArrayList list = new ArrayList();
    int rows = gvwDemo.Rows.Count;
    for (int i = 0; i < rows; i++) {
    CheckBox chk = (CheckBox)gvwDemo.Rows[i].FindControl("chkSelect");
    if (chk != null && chk.Checked) {
    list.Add(i);
    }
    } ArrayList dataList = (ArrayList)ViewState["data"];
    for (int i = 0; i < list.Count; i++) {
    dataList.RemoveAt((int)list[i]);
    for (int j = i; j < list.Count; j++) {
    int index = (int)list[j];
    list[j] = index - 1;
    }
    } gvwDemo.DataSource = dataList;
    gvwDemo.DataBind();
    }
    }