最近访问了建行网站时
(其实在oblog
也采用了类似的技巧
不过方法不同罢了)可以发现
当选择不同的文本框
可以出现不同的颜色
要完成这个功能很简单
但是如果有很多类似的功能
如果一个个设置控件样式显然很累
一个简单的处理方法写一个方法让系统执行就可以了
看如下代码
class BasePage:Page
{
public static void SetInputControlsHighlight(Control container string className bool onlyTextBoxes)
{
foreach (Control ctl in containerControls)
{
if ((onlyTextBoxes && ctl is TextBox) 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;
wctlAttributesAdd(onfocus stringFormat(thisclassName = {}; className));
wctlAttributesAdd(onblur thisclassName = ;);
}
else
{
if (ctlControlsCount > )
SetInputControlsHighlight(ctl className onlyTextBoxes);
}
}
}
}
定义一个类主要就是重写onfocus和onblur当用户选择不同控件时就出现不同的样式样式名称需要你自己定义
这里需要注意这个BasePage是从Page类派生所以以后建立页面时应该是
WebForm:MyPage
{
//调用SetInputControlsHighlight方法
}
这样就可以了