• Gridview的footer模板中放置控件实现添加功能


    前台代码:
     <asp:GridView ID="GridView1" runat="server" ShowFooter="true" AutoGenerateColumns="false">
                <Columns>
                    <asp:TemplateField HeaderText="编号">
                        <ItemTemplate>
                            <%#Eval("EmpID") %>
                        </ItemTemplate>
                    </asp:TemplateField>
                    <asp:TemplateField HeaderText="姓名">
                        <ItemTemplate>
                            <%#Eval("EmpName") %>
                        </ItemTemplate>
                        <FooterTemplate>
                            <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
                        </FooterTemplate>
                    </asp:TemplateField>
                    <asp:TemplateField HeaderText ="性别">
                    
                    <ItemTemplate>
                    <%#Eval("EmpSex") %>
                    </ItemTemplate>
                    <FooterTemplate>
                        <asp:DropDownList AutoPostBack="true" ID="DropDownList1" runat="server">
                        <asp:ListItem Text ="请选择" Value="0"></asp:ListItem>
                        <asp:ListItem Text ="男" Value ="1"></asp:ListItem>
                        <asp:ListItem Text ="女" Value ="2"></asp:ListItem>
                        </asp:DropDownList>
                    </FooterTemplate>
                    </asp:TemplateField>
                    <asp:TemplateField HeaderText ="地址">
                    <ItemTemplate>
                    <%#Eval("EmpAddress") %>
                    </ItemTemplate>
                    <FooterTemplate>
                        <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
                        <asp:Button ID="Button1" OnClick="AddClick" runat="server" Text="添加" />
                    </FooterTemplate>
                    </asp:TemplateField>
                </Columns>
            </asp:GridView>
    
    后台代码:
     protected void Page_Load(object sender, EventArgs e)
        {
    
            if (!IsPostBack)
            {
                databind();
            }
        }
        public void databind()
        {
            SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["Conn"].ToString());
            SqlCommand cmd = new SqlCommand("SELECT * FROM T_Users", con);
            SqlDataAdapter da = new SqlDataAdapter(cmd);
            DataSet ds = new DataSet();
            da.Fill(ds);
            this.GridView1.DataSource = ds.Tables[0];
            this.GridView1.DataKeyNames = new string[] { "EmpID" };
            this.GridView1.DataBind();
        }
        public void AddClick(object sender, EventArgs e)
        {
            SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["Conn"].ToString());
            SqlCommand cmd = new SqlCommand();
            cmd.Connection = con;
            cmd.CommandText = "Insert into T_Users(EmpName,EmpSex,EmpAddress) values(@a,@b,@c)";
            SqlParameter[] sp = new SqlParameter[3];
            sp[0] = new SqlParameter("@a", SqlDbType.NVarChar, 20);
            sp[1] = new SqlParameter("@b", SqlDbType.NVarChar, 4);
            sp[2] = new SqlParameter("@c", SqlDbType.NVarChar, 50);
            sp[0].Value = ((TextBox)this.GridView1.FooterRow.FindControl("TextBox1")).Text.Trim();
            sp[1].Value = ((DropDownList)this.GridView1.FooterRow.FindControl("DropDownList1")).SelectedItem.Text;
            sp[2].Value = ((TextBox)this.GridView1.FooterRow.FindControl("TextBox2")).Text.Trim();
            cmd.Parameters.AddRange(sp);
            if (con.State == ConnectionState.Closed)
            {
                con.Open();
            }
            cmd.ExecuteNonQuery();
            databind();
        }
    
    怀揣着一点点梦想的年轻人
    相信技术和创新的力量
    喜欢快速反应的工作节奏
  • 相关阅读:
    Dev 控件笔记1 repositoryItemLookUpEdit 控件
    装饰账务管理
    Tiptop ERP 采购运费一键分摊
    笔记:两数互相交换,不使用第三方变量
    .net core3.0 webapi搭建(一)
    【笔记】冒泡排序
    Mysql 几种常见的插入 Insert into,Replace Into,Insert ignore
    【转】IEnumerable接口的一个简单示例
    [转]从实例谈OOP、工厂模式和重构
    浅谈C#委托的用法-delegate[转]
  • 原文地址:https://www.cnblogs.com/hfliyi/p/1982605.html
Copyright © 2020-2023  润新知