Вот как вы можете выделить активный элемент управления вводом, который имеет фокус. Вам нужно обработать onfocus и onblur клиентские события элементов управления вводом. И применить или удалить стиль css для элемента управления, установив элементы управления className атрибут
Добавьте это в свой CSS-файл:
.highlight
{
background-color: #fefbd2; /*highlight with yellow*/
color: #000080; /*make text blue*/
}
В вашем каталоге App_Code создайте вспомогательный класс, такой как
public static class Helpers
{
/// <summary>
/// Adds the onfocus and onblur attributes to all input controls found in the specified parent,
/// to change their apperance with the control has the focus
/// </summary>
public static void SetInputControlsHighlight(Control container, string className, bool onlyTextBoxes)
{
foreach (Control ctl in container.Controls)
{
if ((onlyTextBoxes && ctl is TextBox) ||
(!onlyTextBoxes && (ctl is TextBox || ctl is DropDownList ||
ctl is ListBox || ctl is CheckBox || ctl is RadioButton ||
ctl is RadioButtonList || ctl is CheckBoxList)))
{
WebControl wctl = ctl as WebControl;
wctl.Attributes.Add("onfocus", string.Format("this.className = '{0}';", className));
wctl.Attributes.Add("onblur", "this.className = '';");
}
else
{
if (ctl.Controls.Count > 0)
SetInputControlsHighlight(ctl, className, onlyTextBoxes);
}
}
}
}
Затем просто переопределите метод OnLoad любой страницы.
protected override void OnLoad(EventArgs e)
{
Helpers.SetInputControlsHighlight(this, "highlight", false);
base.OnLoad(e);
}