-2
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load 
    Dim lbl_Date As New Label
    Dim i as int16
    i = 20
    While (i < i + 1)
       lbl_Date = TryCast(Page.FindControl("lbl_Date" + i.ToString), Label)
       lbl_Date = "Value"
   i = i + 1
   End While
End Sub

lbl_Date这是在变量中返回 Nothing 。如果我不使用它Page_Load,它工作得很好。只有在Page_Load它不起作用。任何解释:::: 好吧,我在这里要做的是。我有 100 个标签名称是从 lable1 到 lable100。我可以这样做 label1 =Value 和 label2 =Value 等等,但我试图放入循环中,所以我的代码更少。仅用于信息...此代码有效但不在 Page_Load 中,我认为每个人都在寻找代码,但这与页面生命周期有关

4

1 回答 1

-1
<asp:content runat="server" id="leftcontent" contentplaceholderid="LeftSidePanel" xmlns:asp="#unknown"> 
<div id="mydiv" runat="server"> 
<asp:linkbutton id="Lnk_Heading1" runat="server"> </asp:linkbutton>
<asp:label id="lbl_Date1" runat="server"> </asp:label>
<asp:label id="lbl_Detail1" runat="server"> </asp:label>
<asp:button id="Button1" runat="server" text="Button" /> 
</div> 
</asp:content>

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load 
Dim lbl_Date As New Label 
Dim i as int16 i = 20 
While (i &lt; i + 1) lbl_Date = TryCast(Mydiv.FindControl("lbl_Date" + i.ToString), Label) 
lbl_Date = "Value" 
i = i + 1 
End While 
End Sub 

问题是,我没有在我的 aspx 页面中使用 DIV。当我将代码放入 div 并在代码隐藏中使用 div 的引用时,它就可以工作了。

于 2012-04-19T12:53:27.070 回答