Я знаю, что этот вопрос задавался много раз, но я подозреваю, что у меня уникальный сценарий.
Я загружаю дочерний элемент управления (ASCX) и устанавливаю свойство для этого элемента управления. Это прекрасно работает до обратной передачи, где свойство имеет значение null.
При этом первый класс, который загружает ChildControl :
protected override void CreateChildControls()
{
MyUserControl control = (MyUserControl)Page.LoadControl(_ascxPath);
control.MyProperty = base.MyProperty
Controls.Add(control);
}
Затем в моем дочернем контроле у меня есть следующий код:
public partial class MyUserControl : UserControl
{
public MyType MyProperty { get; set; }
protected void Page_Load(object sender, EventArgs e)
{
//Exception on next line because Property is null (only on postback)
var somevalue = MyProperty.SubProperty;
CreateChildControls
вызывается? Всегда ли он создается независимо от того, что такоеIsPostBack
? - person Peter Monks   schedule 07.06.2012