运用GirdView控件进行弹出提示性的删除框

来源:互联网 发布:win10版qq知乎 编辑:程序博客网 时间:2024/04/28 10:10

CLASS的前台设计

<body>
    <form id="form1" runat="server">
    <div>
   
        <asp:GridView ID="GridView1" runat="server" AllowPaging="True"
            AllowSorting="True" AutoGenerateColumns="False" DataKeyNames="sid"
            DataSourceID="SqlDataSource1" Xonrowcommand="GridView1_RowCommand"
            Xonrowdatabound="GridView1_RowDataBound">
            <Columns>
                <asp:BoundField DataField="sid" HeaderText="学号" InsertVisible="False"
                    ReadOnly="True" SortExpression="sid" />
                <asp:HyperLinkField DataTextField="sname" HeaderText="姓名" />
                <asp:BoundField DataField="classid" HeaderText="班号" SortExpression="classid" />
                <asp:BoundField DataField="sex" HeaderText="性别" SortExpression="sex" />
                <asp:BoundField DataField="age" HeaderText="年龄" SortExpression="age" />
                <asp:CheckBoxField DataField="isking" HeaderText="班长" SortExpression="isking" />
                <asp:ButtonField HeaderText="删除" Text="删除" />
                <asp:ButtonField CommandName="initialPassword" Text="初始化密码" />
            </Columns>
        </asp:GridView>
        <br />
        <br />
        <asp:SqlDataSource ID="SqlDataSource1" runat="server"
            ConflictDetection="CompareAllValues"
            ConnectionString="<%$ ConnectionStrings:studentConnectionString %>"
            DeleteCommand="DELETE FROM [student] WHERE [sid] = @original_sid AND [sname] = @original_sname AND (([classid] = @original_classid) OR ([classid] IS NULL AND @original_classid IS NULL)) AND (([sex] = @original_sex) OR ([sex] IS NULL AND @original_sex IS NULL)) AND (([age] = @original_age) OR ([age] IS NULL AND @original_age IS NULL)) AND [isking] = @original_isking"
            InsertCommand="INSERT INTO [student] ([sname], [classid], [sex], [age], [isking]) VALUES (@sname, @classid, @sex, @age, @isking)"
            OldValuesParameterFormatString="original_{0}"
            SelectCommand="SELECT [sid], [sname], [classid], [sex], [age], [isking] FROM [student]"
            UpdateCommand="UPDATE [student] SET [sname] = @sname, [classid] = @classid, [sex] = @sex, [age] = @age, [isking] = @isking WHERE [sid] = @original_sid AND [sname] = @original_sname AND (([classid] = @original_classid) OR ([classid] IS NULL AND @original_classid IS NULL)) AND (([sex] = @original_sex) OR ([sex] IS NULL AND @original_sex IS NULL)) AND (([age] = @original_age) OR ([age] IS NULL AND @original_age IS NULL)) AND [isking] = @original_isking">
            <DeleteParameters>
                <asp:Parameter Name="original_sid" Type="Int32" />
                <asp:Parameter Name="original_sname" Type="String" />
                <asp:Parameter Name="original_classid" Type="Int32" />
                <asp:Parameter Name="original_sex" Type="String" />
                <asp:Parameter Name="original_age" Type="Byte" />
                <asp:Parameter Name="original_isking" Type="Boolean" />
            </DeleteParameters>
            <InsertParameters>
                <asp:Parameter Name="sname" Type="String" />
                <asp:Parameter Name="classid" Type="Int32" />
                <asp:Parameter Name="sex" Type="String" />
                <asp:Parameter Name="age" Type="Byte" />
                <asp:Parameter Name="isking" Type="Boolean" />
            </InsertParameters>
            <UpdateParameters>
                <asp:Parameter Name="sname" Type="String" />
                <asp:Parameter Name="classid" Type="Int32" />
                <asp:Parameter Name="sex" Type="String" />
                <asp:Parameter Name="age" Type="Byte" />
                <asp:Parameter Name="isking" Type="Boolean" />
                <asp:Parameter Name="original_sid" Type="Int32" />
                <asp:Parameter Name="original_sname" Type="String" />
                <asp:Parameter Name="original_classid" Type="Int32" />
                <asp:Parameter Name="original_sex" Type="String" />
                <asp:Parameter Name="original_age" Type="Byte" />
                <asp:Parameter Name="original_isking" Type="Boolean" />
            </UpdateParameters>
        </asp:SqlDataSource>
   
    </div>
    </form>
</body>

 

 

 

 

CLASS的后台设计

 

namespace _12_5内容.班级删除列
{
    public partial class CLASS : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }

        protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            if (e.CommandName == "initialPassword")//获取用户是点击了哪个按钮
            {
            //这里写初始化密码的代码

            }
        }

        protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            //可以在这里处理已经完成的数据
            if(e.Row.RowType!=DataControlRowType.DataRow)
            {
                return;
            }
            string sid = e.Row.Cells[0].Text;
            //HyperLink link = e.Row.Cells[1].Controls[0] as HyperLink;
            LinkButton lbtn = e.Row.Cells[6].Controls[0] as LinkButton;
            if (lbtn != null)
            {
                lbtn.Attributes.Add("onclick", "return confirm('确定要删除编号为"+sid+"的吗?')");
            }
        }
    }
}

 

 

原创粉丝点击