2011-02-15 85 views
0

朋友, 我在中繼器的項目模板中有一個鏈接按鈕,我想訪問下一頁的鏈接按鈕文本。我將postbackurl設置到下一頁。但是當我在目標頁面的代碼後面使用page.PrevoiusPage.Findcontrol(「lnkReport」),我得到一個空值。這些是標記。可以請任何人幫忙嗎?無法從中繼器的項目模板訪問控制ID

<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> 
+0

你不能這樣做,因爲Repeater在前一頁中生成了多個lnkReport LinkBut​​tons。 – 2011-02-15 14:40:16

回答

0

您使用母版頁這樣你的中繼位於內容佔位。您需要做的是找到控制內容佔位符先找到中繼器

例子:

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

我假設你的情況,而不是創建文本框,你應該創建中繼對象,並使用的FindControl再次找到該鏈接。

相關問題