Я загружаю серию элементов управления в событии Page_Load.Тем не менее, я должен воссоздавать эти элементы управления при каждой загрузке страницы, что означает хранение их данных в другом месте.Это громоздко.
protected void Page_Load(object sender, EventArgs e)
{
MyControl control = (MyControl)LoadControl(...);
control.Initialize(GlobalClass.controlData);
//^gives the control the data it had previously.
//Or use ViewState["controlData"] if serializable.
Controls.Add(control);
}
Я чувствую, что должен использовать if (!IsPostBack) {}
, но я не знаю, как и почему.
Напротив, если я помещу элементы управления вразметка, то элементы управления, кажется, остаются постоянными.Например, кнопка в разметке запоминает любые изменения в свойстве Text (я так думаю?).
<asp:Button ID="buttonText" runat="server"
Text="Text Segment" onclick="buttonText_Click" />
Как мне поддерживать некое подобие постоянства с динамически добавленными элементами управления, такими как элементы управления, добавленные через метку-до?Это избавило бы меня от лишней работы и разочарования.
Спасибо.
(Я программировал в течение небольшой вечности, но чем больше я работаю с ASP.NET, тем больше я запутался.прямо противоположное тому, как я понял, научиться работать :-П.)