FieldInfo.CaptionStyle в пользовательском элементе управления формой не работает

Я создал пользовательский элемент управления формы для использования в моей бизнес-форме Kentico с помощью asp.net, и я хочу изменить стиль заголовка поля другого поля в форме в зависимости от значения в моем пользовательском поле управления формой. Итак, вот что я сделал:

protected void ddl_SelectedIndexChanged(object sender, EventArgs e)
{
   if(this.Value == "1")
   {
       FormEngineUserControl formItem = (FormEngineUserControl)this.Form.FieldControls["Other"];
       formItem.FieldInfo.CaptionStyle = "font-weight:bold";
   }
}

Однако заголовок поля в форме, похоже, не выделен жирным шрифтом. Я попытался проверить, срабатывает ли событие, и это происходит. На самом деле, если я попробую что-то вроде formItem.Text = "Something", тогда текстовое поле будет заполнено "Something". Во время отладки я также заметил, что стиль заголовка поля меняется на «начертание шрифта: полужирный», но это не отображается в форме. Итак, что-то не так со свойством captionstyle или с тем, как я его использую. Как заставить его работать?

(Обратите внимание, что поле управления «Другое» является текстовым полем ввода)


person user1422572    schedule 28.05.2012    source источник


Ответы (1)


Вероятно, слишком поздно в жизненном цикле страницы, и элемент управления уже отрисован. Попробуйте установить CaptionStyle раньше (например, в элементе управления OnLoad или OnInit), тогда вы будете знать наверняка.

person rocky    schedule 21.01.2013