我爱Aspx >> Asp.Net >> 用ASP.NET创建自定义文本框其中第3行的目的是,调用基类,继承原有的文本框的属性。AddAttributesToRender的方法使用HtmlTextWriter流作为参数。在第9,第12行,分别通过调用HTML文本流的AddAttribute方法增加其客户端的输出。其中传入了两个参数,第一个参数是HTML的属性,第二个是属性对应的值。它们经过浏览器输出后,变为<input type="text" onBlur="JavaScript...">的形式。
因为浏览器使用的是十六进制的颜色,所以我们采用ColorTranslator类去将.NET的颜色类型转换为浏览器中能识别的颜色类型(第7和第12行)。在第8行,先检查_coloroff属性是否没被赋值,如果没赋值,则backcoloroff的颜色设置为原来文本框的背景色。
而在第5行,我们检查浏览器的类型是否支持onfocus和onblur事件,并且由于想在VS.NET的设计时就能对控件的属性进行改变,所以增加了一个判断的函数indesignmode:
| line 1: private bool inDesignMode() line 2: {line 3: bool blnOut = false;line 4: if( object.ReferenceEquals( System.Web.HttpContext.Current, null ) ) line 5: {line 6: blnOut = true;line 7: } line 8: elseline 9: {line 10: blnOut = false;line 11: }line 12: return blnOut;line 13: } |
在上面代码的第4行,通过判断如果HttpContext实例是否为null,如果为null的话,则证明当前是处于VS.NET的设计模式下,没响应HTTP请求。接下来,我们测试一下所做的控件。
Ҷƪл˵?
NT及低配置老机上用ASP.net的体会..[05-20]
NT及低配置老机上用ASP.net的体会..[05-20]
asp.NET中使用include[05-20]
ASP.NET/Perl.NET 数据库访问例子[05-20]
ASP.NET/Perl.NET 数据库访问例子[05-20]
在 ASP.NET 中访问 Excel 电子数..[05-20]
在 ASP.NET 中访问 Excel 电子数..[05-20]
使用ASP.NET加密口令[05-20]
使用ASP.NET加密口令[05-20]
ASP.NET中设计带事件定制控件[05-20]
NT及低配置老机上用ASP.net的体会..[05-20]
NT及低配置老机上用ASP.net的体会..[05-20]
asp.NET中使用include[05-20]
ASP.NET/Perl.NET 数据库访问例子[05-20]
ASP.NET/Perl.NET 数据库访问例子[05-20]
在 ASP.NET 中访问 Excel 电子数..[05-20]
在 ASP.NET 中访问 Excel 电子数..[05-20]
使用ASP.NET加密口令[05-20]
使用ASP.NET加密口令[05-20]
ASP.NET中设计带事件定制控件[05-20]