1

我想访问网格视图中模板字段中的对象(超链接或按钮)。我该怎么做呢?

4

2 回答 2

1

假设您正在将数据绑定到它,您需要查看在RowDataBound事件中执行该操作。

下面是一个如何在模板字段中检索控件的示例:

.aspx:

<asp:GridView ID="GridView1" Runat="server" 
    OnRowDataBound="GridView1_RowDataBound">
    <Columns>
        <asp:TemplateField HeaderText="Template Field">
            <ItemTemplate>
                <asp:Button ID="btnTest" Runat="server" /> 
            </ItemTemplate>
        </asp:TemplateField>
    </Columns>
</asp:GridView>

代码隐藏:

void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
    if (e.Row.RowType == DataControlRowType.DataRow)
    {
        Button btnTest = (Button)e.Row.FindControl("btnTest");
        btnTest.Text = "I'm in a Template Field";
    }
}
于 2012-04-20T18:29:17.687 回答
0

您可以使用它RowDataBound或单击模板控件的事件,例如

TextBox txtTemp= (TextBox )e.Row[e.RowIndex].FindControl("yourControlName");
string someText=txtTemp.Text;
于 2012-04-20T18:36:55.187 回答