Если вы реализуете свой собственный контроль, или вы повторно управление из рамок, вы могли бы рассмотреть возможность переопределения метода CreateChildControls
В случае, когда вы пишете свой собственный контроль, вы бы просто:
protected override void CreateChildControls() {
// Add a LiteralControl to the current ControlCollection.
this.Controls.Add(new LiteralControl("<p>New Child Control!</p>"));
ChildControlsCreated = true;
}
В случае, когда вы повторно управление от кого-то другого, если он доступен для подмены, вы могли бы сделать что-то вроде:
public MyControl : SomeControl
{
protected override void CreateChildControls() {
base.CreateChildControls();
ChildControlsCreated = true;
}
}
Обратите внимание, что в обоих случаях вы теперь контролируете настройку ChildControlsCreated. Поэтому вы можете расширить эту концепцию до добавления события в свою реализацию управления, которое будет запущено, когда вы установите значение, позволяя любому абоненту знать, что были созданы дочерние элементы управления.
Попробуйте вывести значение 'ChildControlsCreated'. Кроме того, используйте '!' Перед 'tempControl.ChildControlsCreated' вместо' == false'. –
Что именно вы хотите сделать? – Saint