我有一个gridview,在项目模板中我有一个usercontrol,它在回发时失去了它的价值。我希望能够在后面的c#代码中从我的RowDataBound方法访问控件并重新分配CandidateID值
GridView控件
<asp:TemplateField>
<ItemTemplate>
<Controls:LikeButton ID="CandidateLikeButton" runat="server" LikeType="Candidate"
LikedObjectID='<%# Bind("CandidateID") %>' />
</ItemTemplate>
</asp:TemplateField>
我该怎么做?
答案 0 :(得分:1)
您可以像任何其他控件一样使用FindControl访问它并将其转换回它的类型。
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
LikeButton LB = e.Row.FindControl("CandidateLikeButton") as LikeButton;
LB.CandidateID = 1234;
}
}