我可以在ASP.Net书面VB.net中通过单击按钮将新行添加到datagrid视图吗

时间:2019-01-07 06:16:50

标签: asp.net vb.net

假设我有2个文本框,1个按钮和1个gridview,并且我想通过单击按钮将文本框中的数据添加到gridview。
我怎么能做到呢?
我试过下面的代码,但它替换了旧行。

for($i=0;$i<2;$i++)
{
  chance($getAllUserTicketHistoryJson[rand(0,count($getAllUserTicketHistoryJson))]);
}
function chance($arrWinner = array()){
 // the array for winner is
echo "<pre> Winner array ";
print_r($arrWinner);
echo "</pre>";
}

1 个答案:

答案 0 :(得分:1)

当您单击ASP.NET中的按钮时,将发生回发并重新创建页面。 因此,您需要将数据保存在某处。

例如,如果将其保存到这样的会话变量中。

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