asp.net 2.0中用GRIDVIEW插入新记录

原创 2004年09月27日 15:11:00

看了下国外某巨牛的BLOG,大概是讲asp.net 2.0中用GRIDVIEW插入新记录的,方法比较特别,但效果
一般,故将程序转之,较为简单,不做解释等。
<%@ Page Language="C#" ClassName="Default_aspx" %>

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

 

<script runat="server">
    void CancelButton1_Click(object sender, EventArgs e)
    {

        GridView1.ShowFooter = false;

    }
    void AddButton1_Click(object sender, EventArgs e)
    {

        GridView1.ShowFooter = true;

    }

 

    void Button1_Click(object sender, EventArgs e)

    {
       
        TextBox customerID = GridView1.FooterRow.FindControl("CustomerIDTextBox") as TextBox;

        TextBox companyName = GridView1.FooterRow.FindControl("CompanyNameTextBox") as TextBox;

        DropDownList ContactTitle = GridView1.FooterRow.FindControl("ContactTitleDropDownList") as DropDownList;

 

        SqlDataSource1.InsertParameters["CustomerID"].DefaultValue = customerID.Text;

        SqlDataSource1.InsertParameters["CompanyName"].DefaultValue = companyName.Text;

        SqlDataSource1.InsertParameters["ContactTitle"].DefaultValue = ContactTitle.SelectedValue;

 

        SqlDataSource1.Insert();

    }

   

</script>

 

<html xmlns="http://www.w3.org/1999/xhtml" >

<head id="Head1" runat="server">

    <title>Untitled Page</title>

</head>

<body>

    <form id="form1" runat="server">

    <div>
    <asp:Button ID="AddButton1" runat="Server" Text="Add new Item" OnClick="AddButton1_Click" />


    <asp:GridView ID="GridView1" Runat="server" DataSourceID="SqlDataSource1" DataKeyNames="CustomerID"

            AutoGenerateColumns="False" ShowFooter="True">

            <Columns>

                <asp:TemplateField>

                    <ItemTemplate>

                        <asp:Label ID="CustomerIDLabel" Runat="Server"><%# Eval("CustomerID") %></asp:Label>

                    </ItemTemplate>

                    <FooterTemplate>

                        <asp:TextBox ID="CustomerIDTextBox" Runat="server"></asp:TextBox>

                    </FooterTemplate>

                </asp:TemplateField>

                <asp:TemplateField>

                    <ItemTemplate>

                        <asp:Label ID="CompanyNameLabel" Runat="Server"><%# Eval("CompanyName") %></asp:Label>

                    </ItemTemplate>

                    <FooterTemplate>

                        <asp:TextBox ID="CompanyNameTextBox" Runat="server"></asp:TextBox>

                    </FooterTemplate>

                </asp:TemplateField>

                <asp:TemplateField>

                    <FooterTemplate>

                        <asp:DropDownList ID="ContactTitleDropDownList" Runat="server" DataSourceID="SqlDataSource2" DataTextField="ContactTitle" DataValueField="ContactTitle">

                        </asp:DropDownList>

                        <asp:SqlDataSource ID="SqlDataSource2" Runat="server" SelectCommand="SELECT DISTINCT [ContactTitle] FROM [Customers]"

                            ConnectionString="server=localhost;uid=sa;password=xxx;database=northwind">

                        </asp:SqlDataSource>

                        <asp:Button ID="Button1" Runat="server" Text="Add" OnClick="Button1_Click" />
  <asp:Button ID="CancelButton1" Runat="server" Text="Cancel" OnClick="CancelButton1_Click" />

                    </FooterTemplate>

                    <ItemTemplate>

                        <asp:DropDownList ID="ContactTitleDropDown" SelectedValue='<%# Bind("ContactTitle") %>' Runat="Server" DataSourceID="SqlDataSource3" DataTextField="ContactTitle" DataValueField="ContactTitle" ></asp:DropDownList>

                        <asp:SqlDataSource ID="SqlDataSource3" Runat="server" SelectCommand="SELECT DISTINCT [ContactTitle] FROM [Customers]"

                            ConnectionString="server=localhost;uid=sa;password=xxx;database=northwind" EnableCaching="True">

                        </asp:SqlDataSource>

                    </ItemTemplate>

                </asp:TemplateField>

            </Columns>

        </asp:GridView>

        <asp:SqlDataSource ID="SqlDataSource1" Runat="server"

            InsertCommand="INSERT INTO [Customers] ([CustomerID], [CompanyName], [ContactTitle]) VALUES (@CustomerID, @CompanyName, @ContactTitle)"

            SelectCommand="SELECT [CustomerID], [CompanyName], [ContactTitle] FROM [Customers]"

            ConnectionString="server=localhost;uid=sa;password=xxxxx;database=northwind">

            <DeleteParameters>

                <asp:Parameter Type="String" Name="CustomerID"></asp:Parameter>

            </DeleteParameters>

            <UpdateParameters>

                <asp:Parameter Type="String" Name="CompanyName"></asp:Parameter>

                <asp:Parameter Type="String" Name="ContactTitle"></asp:Parameter>

                <asp:Parameter Type="String" Name="CustomerID"></asp:Parameter>

            </UpdateParameters>

            <InsertParameters>

                <asp:Parameter Type="String" Name="CustomerID"></asp:Parameter>

                <asp:Parameter Type="String" Name="CompanyName"></asp:Parameter>

                <asp:Parameter Type="String" Name="ContactTitle"></asp:Parameter>

            </InsertParameters>

        </asp:SqlDataSource>

    </div>

    </form>

</body>

</html>

 

 

asp.net 2.0中用GRIDVIEW插入新记录 (转)

看了下国外某巨牛的BLOG,大概是讲asp.net 2.0中用GRIDVIEW插入新记录的,方法比较特别,但效果一般,故将程序转之,较为简单,不做解释等。 http://www.w3.org/TR...
  • jackyrongvip
  • jackyrongvip
  • 2005年01月15日 20:35
  • 464

在GridView中插入新记录的方法(结合DetailsView)

在GridView中插入新记录的方法(结合DetailsView) 注意: 今天在项目中发现,当用下面的方法实现新建功能的时候,不能让gridview允许排序,否则会出错:“数据源...
  • darkread
  • darkread
  • 2012年09月07日 09:19
  • 3760

asp.net2.0中用GRIDVIEW插入新记录

  • zgqtxwd
  • zgqtxwd
  • 2008年04月24日 07:57
  • 103

Gridview控件中,实现插入新记录的操作(footer)

   在Gridview控件中,可以实现插入新记录的操作(见《使用ASP.NET 2.0中的Gridview控件》)一文,但如果想实现在Gridview中,实现在Gridview控件的最后一行,提供一...
  • jonescn
  • jonescn
  • 2008年11月18日 10:21
  • 3498

使用Gridview插入新记录

在ASP.net 2.0中,加入了许多新的功能和控件,相比ASP.NET 1.0/1.1,在各方面都有了很大的提高。其中,在数据控件方面,增加了不少控件,其中的Gridview控件功能十分强大。  在...
  • mounting
  • mounting
  • 2010年07月12日 16:12
  • 343

ASP.NET 2.0/3.5中直接操作Gridview控件插入新记录

ASP.NET 2.0/3.5中直接操作Gridview控件插入新记录发表:admin   阅读:469次  关键字:   字体:[大 中 小] 一、简介 从ASP.NET 2.0起引入了一批新的功能...
  • Discussing
  • Discussing
  • 2011年06月11日 07:08
  • 482

]在GridView中插入新记录

[翻译]在GridView中插入新记录原文发布日期:2007.04.11作者:Bipin Joshi翻译:webabcdGridView控件不允许你插入新记录。 本文中我将举例说明快速解决这个问题的方...
  • sqlmlm
  • sqlmlm
  • 2009年08月10日 11:08
  • 604

GridView控件添加空行

GridView控件在使用分页时,如果绑定的数据不满一页,那么GridView 仅显示绑定的数据。例如,将GridView的 PageSize 设置为 10,每页显示 10 条数据,如果当前查询仅返回...
  • debugingstudy
  • debugingstudy
  • 2012年10月06日 13:49
  • 1575

【asp.net】GridView数据的编辑

·在新闻发布系统中,牛腩老师实现了点击编辑在表格中修改信息,使用的是Ajax,在总结GridView控件中突然发现了这个控件也有自带的编辑功能,于是研究了一段时间,虽然没有牛腩老师的方便和那样的效果,...
  • u012331102
  • u012331102
  • 2015年08月12日 16:03
  • 670

实现GridView 里的进度条

 在一些项目管理系统里经常要用一个进度条去动态显示当前项目进展情况,那如何在GridView里实现进度条呢?首先要有一个百分比(如根据当前的情况和原先计划的工期计算一个项目完成的百分比),然后根据这个...
  • hakule
  • hakule
  • 2008年11月17日 21:26
  • 5217
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:asp.net 2.0中用GRIDVIEW插入新记录
举报原因:
原因补充:

(最多只允许输入30个字)