如何使用gridview控件的值填充文本框?

时间:2012-04-30 13:51:05

标签: c# asp.net gridview textbox

只需一个常规值就可以编写类似

的内容
  protected void GridView1_SelectedIndexChanged(Object sender, EventArgs e)
{
    GridViewRow email = GridView1.SelectedRow;
    txtbox.Text = email.Cells[5].Text;

}

但是,我想在gridview中填充一个值为文本框控件的文本框。我有一个行列表,根据我选择的行,该文本框将填充该控件值。任何帮助/建议将不胜感激。

4 个答案:

答案 0 :(得分:1)

尝试以下代码。

TextBox tb = GridView1.SelectedRow.FindControl("textboxId") as TextBox;
textbox.Text = tb.Text;

答案 1 :(得分:1)

试试这个:

GridView1.RowCommand += GridView1_RowCommand;
private void GridView1_RowCommand(object sender, System.Web.UI.WebControls.GridViewCommandEventArgs e)
{
        if (e.CommandName == "Select")
        {
            int index = Convert.ToInt32(Convert.ToString(e.CommandArgument));
            GridViewRow row = GridView1.Rows[index];
            this.NameTextBox.Text = Server.HtmlDecode(row.Cells[1].Text);

        }

}

答案 2 :(得分:1)

我建议使用datakeys。它比使用单元格索引更容易,更可靠:

<asp:GridView ID="Gridview1" runat="server" DataKeyNames="Column1, Column2" ...>

然后,在代码隐藏中,您可以访问如下值:

protected void GridView1_SelectedIndexChanged(Object sender, EventArgs e)
{
    GridViewRow email = GridView1.SelectedRow;
    txtbox.Text = (string)GridView1.DataKeys[email.RowIndex]["Column1"];    
}

答案 3 :(得分:0)

您可以在此处找到有关如何使用表单的文本框值填充gridview的更好代码。 http://sharepoint-2010-world.blogspot.in/2013/10/populating-grid-with-form-values.html