C#更改gridview上文本框的背景色

C#更改gridview上文本框的背景色,c#,asp.net,gridview,textbox,C#,Asp.net,Gridview,Textbox,我有一个gridview,每行的一个单元格中都有一个文本框。我每行都有一个按钮用于输入数据。所以我知道我在哪一排。我知道了如何设置单元格的背景色,但没有设置文本框的背景色。有人知道怎么做吗 grIndex-是我所在的那一行 单元格[]-是单元格所在的列 下面是我用来设置单元格背景颜色的代码 GridViewListComp.Rows[grIndex].Cells[5].BackColor = Color.Yellow; 提前感谢。您必须使用FindControl并将其转换回文本框以访问其属性

我有一个gridview,每行的一个单元格中都有一个
文本框。我每行都有一个按钮用于输入数据。所以我知道我在哪一排。我知道了如何设置单元格的背景色,但没有设置
文本框的背景色。有人知道怎么做吗

grIndex
-是我所在的那一行

单元格[]
-是单元格所在的列

下面是我用来设置单元格背景颜色的代码

GridViewListComp.Rows[grIndex].Cells[5].BackColor = Color.Yellow;

提前感谢。

您必须使用
FindControl
并将其转换回文本框以访问其属性

TextBox textbox = GridView1.Rows[grIndex].Cells[5].FindControl("TextBox1") as TextBox;
textbox.BackColor = Color.Green;
或者您可以使用
OnRowDataBound
事件

protected void GridViewListComp_RowDataBound(object sender, GridViewRowEventArgs e)
{
    if (e.Row.RowType == DataControlRowType.DataRow)
    {
        TextBox textbox = e.Row.FindControl("TextBox1") as TextBox;
        textbox.BackColor = Color.Green;
    }
}

您必须使用
FindControl
并将其转换回文本框以访问其属性

TextBox textbox = GridView1.Rows[grIndex].Cells[5].FindControl("TextBox1") as TextBox;
textbox.BackColor = Color.Green;
或者您可以使用
OnRowDataBound
事件

protected void GridViewListComp_RowDataBound(object sender, GridViewRowEventArgs e)
{
    if (e.Row.RowType == DataControlRowType.DataRow)
    {
        TextBox textbox = e.Row.FindControl("TextBox1") as TextBox;
        textbox.BackColor = Color.Green;
    }
}

我想出来了。谢谢大家的帮助


((文本框)GridViewListComp.Rows[grIndex].FindControl(“txtPolicy”)).BackColor=Color.Yellow

我明白了。谢谢大家的帮助

((文本框)GridViewListComp.Rows[grIndex].FindControl(“txtPolicy”)).BackColor=Color.Yellow

检查这个检查这个