无法从转发器的项目模板访问控件ID

时间:2011-02-15 14:36:22

标签: asp.net

友  我在转发器的项目模板中有一个链接按钮,我想访问下一页的链接按钮文本。我将postbackurl设置为下一页。但是当我在目的地上使用page.PrevoiusPage.Findcontrol(“lnkReport”)时页面的代码背后,我得到一个空值。这些是标记。可以有人帮忙吗?

<asp:Content ID="Content2" ContentPlaceHolderID="cpmain" runat="Server">

<fieldset id="fsTrialAct"></fieldset>

<asp:Repeater ID="rptRepeater" runat="server">

<asp:LinkButton ID="lnkReport" 
       PostBackUrl="~/features/Reports/AdHocReportDetail.aspx"
             runat="server"><%#Eval("AdhocBurstingReportName")%>
</asp:LinkButton></p>

</asp:Repeater>

</asp:Content>

1 个答案:

答案 0 :(得分:0)

您使用母版页,因此您的转发器位于内容占位符中。在找到转发器之前,您需要先做找到内容占位符

示例:

Control placeHolder = PreviousPage.Controls[0].FindControl("ContentPlaceHolder1");
TextBox SourceTextBox = (TextBox)placeHolder.FindControl("TextBox1");
if (SourceTextBox != null)
{
    Label1.Text = SourceTextBox.Text;
}

我假设在您的情况下,您应该创建转发器对象并再次使用 FindControl 来查找链接,而不是创建TextBox。