如何动态添加表行

时间:2014-04-30 11:39:30

标签: c# asp.net webforms

我正在尝试在按钮单击时在表行中添加值。它正在处理数据库但不在网页上工作。它覆盖了页面的最后一行。

如何在每次点击按钮时生成新行。

这是我的按钮点击代码 -

protected void Page_Load(object sender, EventArgs e)
{
    tblAdd.Visible = false;
    Label1.Visible = false;

    //Label2.Visible = false;


}

protected void btnSave_Click(object sender, EventArgs e)
{
    int count = 1;
    if (Page.IsValid)
    {

        TableRow NewRow1 = new TableRow();

        //1st cell
        TableCell NewCell1 = new TableCell();

        //new checkbox
        CheckBox newCheckBox1 = new CheckBox();


        // adding lebel into cell
        NewCell1.Controls.Add(newCheckBox1);

        // adding cells to row
        NewRow1.Cells.Add(NewCell1);

        //2ed cell
        TableCell NewCell2 = new TableCell();

        Label newLabel1 = new Label();
        count = count + 1;
        newLabel1.Text = txtName.Text;
        newLabel1.ID = "label" + count;

        NewCell2.Controls.Add(newLabel1);
        NewRow1.Cells.Add(NewCell2);

        //adding row into table
        tblLanguages.Rows.Add(NewRow1);

        btnAdd.Visible = true;
        btnDelete.Visible = true;
        Label2.Visible = true;
        Label2.Text = "Successfully Added";
        add();
    }
    txtName.Text = "";
}

public int add()
{
    string strcon = ConfigurationManager.ConnectionStrings["Dbconnection"].ConnectionString;
    SqlConnection sqlConnection = new SqlConnection(strcon);

    SqlCommand command = new SqlCommand("hrm_AddLanguages", sqlConnection);
    command.CommandType = CommandType.StoredProcedure;
    command.Parameters.Add("@Name", SqlDbType.VarChar).Value = txtName.Text;
    command.Parameters.Add("@CreatedOn", SqlDbType.DateTime).Value = DateTime.Now;
    command.Parameters.Add("@UpdatedOn", SqlDbType.DateTime).Value = DateTime.Now;
    command.Parameters.Add("@CreatedBy", SqlDbType.BigInt).Value = 1;
    command.Parameters.Add("@UpdatedBy", SqlDbType.BigInt).Value = 1;
    command.Parameters.Add("@IsDeleted", SqlDbType.Bit).Value = 0;
    sqlConnection.Open();
    return command.ExecuteNonQuery();
}

请帮助我。

1 个答案:

答案 0 :(得分:1)

如果可能,请尝试使用网格视图执行此操作。最好使用网格视图而不是表格。

查看以下链接。它将帮助您找到解决方案。

DataTable in ASP.Net Session