Проблема CreateChildControls с пользовательским элементом управления

У меня есть пользовательский элемент управления, который создает текстовое поле на CreateChildControls.

Я пытаюсь установить значение этого текстового поля (через свойство элемента управления) в событии загрузки страницы, которая использует пользовательский элемент управления. К сожалению, на данный момент CreateChildControls еще не были выполнены, и текстовое поле имеет значение null.

Я вызвал EnsureChildControls на странице потребителя, прежде чем использовать свойства пользовательского элемента управления, но, к счастью, все равно null.

Это происходит, когда нет обратной передачи.

1 ответ

Решение

Вам нужно вызвать EnsureChildControls из получателя свойства вашего пользовательского элемента управления, чтобы убедиться, что он создан до доступа к вложенному элементу управления. Если это не поможет опубликовать некоторый код, чтобы мы могли видеть, что вы делаете.

Public string Text
{
   get
   {
      EnsureChildControls();
      return textBox1.Text;
   }
   set
   {
      EnsureChildControls();
      textBox1.Text = value;
   }
}
Другие вопросы по тегам