如何在单击超链接后在运行时更改按钮上的文本

时间:2013-04-19 12:49:10

标签: asp.net button gridview runtime

我有两个文本框,一个按钮和一个gridview。 Q.1当用户在文本框中输入详细信息并按下提交按钮时,我想相应地更新网格视图 Q.2当用户点击gridview中存在的“编辑”链接时,我想将提交按钮的文本更改为更新按钮。 我怎么能提前感谢

我还试过了什么:

aspx.cs代码:

protected void Page_Load(object sender, EventArgs e)
{
    if (!IsPostBack)
    {
        this.BindGrid();
        string ID = Request.QueryString["ID"];
        cmd = new SqlCommand("Select * from UserDetails where ID='" + ID + "'", con);
        con.Open();
        ad = new SqlDataAdapter(cmd);
        dt.Clear();
        ad.Fill(dt);
        if (dt.Rows.Count > 0)
        {
            tbid.Text = ID;
            TextBox1.Text = dt.Rows[0][1].ToString();
            TextBox2.Text = dt.Rows[0][2].ToString();
        }
        con.Close();
    }
}  
protected void btnSubmit_Click(object sender, EventArgs e)
{
    SqlConnection con = new SqlConnection("Data Source=.;Initial Catalog=Test;Integrated Security=True");
    con.Open();

    string Name = TextBox1.Text;
    string Place = TextBox2.Text;

    using (SqlCommand cmd = con.CreateCommand())
    {
        cmd.CommandText = "insert into UserDetails(Name,Place) values('" + Name + "','" + Place + "')";
        cmd.Parameters.AddWithValue("@Name", TextBox1.Text);
        cmd.Parameters.AddWithValue("@Place", TextBox2.Text);
        cmd.ExecuteNonQuery();
        Label1.Text = "Record Successfully inserted";
    }
    con.Close();
    btnSubmit.Text = "Update";
    TextBox1.Text = string.Empty;
    TextBox2.Text = string.Empty;
    }
private void BindGrid()
{
    con.Open();
    ad = new SqlDataAdapter("Select * from UserDetails", con);
    ad.Fill(dt);
    GridView1.DataSource = dt;
    GridView1.DataBind();
    con.Close();
}

2 个答案:

答案 0 :(得分:1)

拨打Refresh()没有帮助?我不确定ASP.NET,但你必须在Forms中进行。

答案 1 :(得分:0)

用户提交新数据后,您可以尝试再次调用bindgrid方法,这样它将在保存新数据后重新绑定。对于编辑片段,GridView有一个编辑模板,您可以尝试使用它: http://msdn.microsoft.com/en-us/library/ms972948.aspx