我在 Web 部件中嵌入了一个用户控件。它有以下代码片段:
protected TextBox searchTextBox;
protected Button goButton;
protected Button nextButton;
protected Repeater pushpins;
protected Label currentPageLabel;
protected void goButton_Click(object sender, EventArgs e)
{
// Do stuff
}
<asp:TextBox ID="searchTextBox" runat="server" />
<asp:Button ID="goButton" runat="server" Text="Go" OnClick="goButton_Click" />
<asp:Repeater ID="pushpins" runat="server" EnableViewState="false">
<ItemTemplate>Blah</ItemTemplate>
</asp:Repeater>
<asp:Label ID="currentPageLabel" runat="server" />
<asp:Button ID="nextButton" runat="server" Text=" >> " OnClick="nextButton_Click" />
(没有 OnLoad 或 CreateChildControls 方法。)
如果我在 的第一行放置一个断点goButton_Click
,我会发现:
searchTextBox
:初始化goButton
:初始化nextButton
:空pushpins
:初始化currentPageLabel
:空
为什么有些控件被初始化而有些没有?如果我想更新Text
属性,我该如何解决currentPageLabel
?
更新:
我在页面生命周期中一直放置断点,发现它nextButton
从未初始化过。断点位于 OnLoad、CreateChildControls、goButton_Click、OnPreRender、Render 和 OnUnload。currentPageLabel