我在 Visual Studio 2010 上使用 C# 创建了两个文本框来输入员工的名字和姓氏以及在基于 Web 的 ASP.NET 应用程序中的按钮。当我单击按钮时,我在文本框中输入的值应该是显示在 Gridview 中而不存储在数据库中。
我怎样才能做到这一点?您能否提供一个示例代码来执行上述功能?
我在 Visual Studio 2010 上使用 C# 创建了两个文本框来输入员工的名字和姓氏以及在基于 Web 的 ASP.NET 应用程序中的按钮。当我单击按钮时,我在文本框中输入的值应该是显示在 Gridview 中而不存储在数据库中。
我怎样才能做到这一点?您能否提供一个示例代码来执行上述功能?
这是一个工作代码..
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();
}
您可以在这样的代码中访问 gridview:
var gridview = document.getElementById("<%=Gridview1.ClientID%>");
在您可以访问该网格视图之后,将是在客户端更新/添加/删除信息的方法。但请注意,您还必须告诉服务器端您更新了 DB 中的信息,以便他可以将更改保存到 DB。
我希望您应该发送ajax请求以更新 DB 中的数据,并使用代码从javascript访问网格并通过javascript在客户端更新数据。
取您在DataTable的文本框中输入的值,并将该 dataTable 作为数据源提供给该datagrid。
检查此链接
http://forums.asp.net/t/1672122.aspx/1
您提供的代码工作正常。但它只会向 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.
}
}