1

我在 Visual Studio 2010 上使用 C# 创建了两个文本框来输入员工的名字和姓氏以及在基于 Web 的 ASP.NET 应用程序中的按钮。当我单击按钮时,我在文本框中输入的值应该是显示在 Gridview 中而不存储在数据库中。

我怎样才能做到这一点?您能否提供一个示例代码来执行上述功能?

4

4 回答 4

1

这是一个工作代码..

protected void Page_Load(object sender, EventArgs e)
{
        dt = new DataTable();
        DataColumn dc1 = new DataColumn("FIRST NAME");
        DataColumn dc2 = new DataColumn("LAST NAME");
        dt.Columns.Add(dc1);
        dt.Columns.Add(dc2);
        DataRow dr1 = dt.NewRow();
        GridView1.DataSource = dt;
        GridView1.DataBind();
}
DataTable dt;

protected void Button1_Click(object sender, EventArgs e)
{
    DataRow dr1 = dt.NewRow();
    dr1[0] = TextBox1.Text;
    dr1[1] = TextBox2.Text;
    dt.Rows.Add(dr1); 
    GridView1.DataSource = dt;
    GridView1.DataBind();
}
于 2013-02-15T05:38:07.290 回答
0

您可以在这样的代码中访问 gridview:

var gridview = document.getElementById("<%=Gridview1.ClientID%>");

在您可以访问该网格视图之后,将是在客户端更新/添加/删除信息的方法。但请注意,您还必须告诉服务器端您更新了 DB 中的信息,以便他可以将更改保存到 DB。
我希望您应该发送ajax请求以更新 DB 中的数据,并使用代码从javascript访问网格并通过javascript在客户端更新数据。

于 2013-02-15T05:32:59.793 回答
0

取您在DataTable的文本框中输入的值,并将该 dataTable 作为数据源提供给该datagrid
检查此链接 http://forums.asp.net/t/1672122.aspx/1

于 2013-02-15T05:36:20.430 回答
0

您提供的代码工作正常。但它只会向 GridView 添加一条记录。如果您添加了新记录,则旧数据将被替换。所以我们必须保留旧记录。

只需在按钮单击事件中输入以下代码即可。

    protected void Button1_Click(object sender, EventArgs e)
    {
        if(Session["Data"] == null) //Checking if the session contain any value.
        {
            DataTable dt = new DataTable(); //creating the columns.
            dt.Columns.Add("Name");
            dt.Columns.Add("Price");
            dt.Columns.Add("Stock");

            DataRow dr = dt.NewRow(); //Create a new row and add the row values.
            dr[0] = TextBox1.Text;
            dr[1] = TextBox2.Text;
            dr[2] = TextBox3.Text;
            dt.Rows.Add(dr);

            GridView1.DataSource = dt; //Populate values to Gridview.
            GridView1.DataBind();

            Session["Data"] = dt; //Storing that table into session.           
        }
        else
        {
            DataTable dt = new DataTable();
            dt = (DataTable)Session["Data"]; //Retrieve the stored table from session.

            DataRow dr = dt.NewRow(); //Adding a new row to existing table.
            dr[0] = TextBox1.Text;
            dr[1] = TextBox2.Text;
            dr[2] = TextBox3.Text;
            dt.Rows.Add(dr);

            GridView1.DataSource = dt; //Populate new table values to Gridview.
            GridView1.DataBind();

            Session.Remove("Data"); //Clear the session.
            Session["Data"] = dt; //Store the new table to the session.
        }

    }
于 2014-01-31T12:53:49.883 回答