[英]Can i add new row to datagrid view with a button click in ASP.Net written VB.net
let say i have 2 text box, 1 button and 1 gridview and i want to add data from textboxs to gridview with a button click. 假设我有2个文本框,1个按钮和1个gridview,并且我想通过单击按钮将文本框中的数据添加到gridview。
How can I achive it. 我该如何实现。
I have tried below code but it replaced the old row. 我试过下面的代码,但它替换了旧行。
Private dt As New DataTable
Private Sub Btnidadd_Click(sender As Object, e As EventArgs) Handles Btnidadd.Click
dt.Columns.Add("First Name")
dt.Columns.Add("Last Name")
Dim R As DataRow = dt.NewRow
R("First Name") = textbox1.Text
R("Last Name") = textbox2.Text
dt.Rows.Add(R)
GridView1.DataSource = dt
GridView.DataBind()
When you click the button in ASP.NET, a postback occurs and the page is recreated. 当您单击ASP.NET中的按钮时,将发生回发并重新创建该页面。 So, you need to keep data somewhere. 因此,您需要将数据保存在某处。
For example, if you save it to a session variable like this. 例如,如果将其保存到这样的会话变量中。
Private dt As DataTable
Private Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
If Not IsPostBack Then
dt = New DataTable
dt.Columns.Add("First Name")
dt.Columns.Add("Last Name")
Session("dt") = dt
Else
dt = CType(Session("dt"), DataTable)
End If
End Sub
Private Sub Btnidadd_Click(sender As Object, e As EventArgs) Handles Btnidadd.Click
Dim R As DataRow = dt.NewRow
R("First Name") = TextBox1.Text
R("Last Name") = TextBox2.Text
dt.Rows.Add(R)
GridView1.DataSource = dt
GridView1.DataBind()
Session("dt") = dt
End Sub
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.