• λ我爱Aspx >> Asp.Net >> 用ASP.NET创建自定义文本框
  • 用ASP.NET创建自定义文本框

  • :aspxer  Դ:internet  :2007-5-20 16:33:03  ؼ:.net,asp.net,asp
  • 其中第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请求。接下来,我们测试一下所做的控件。

    Ҷƪл˵?
  • һƪASP.NET开发员工业绩评测中心
    һƪNT及低配置老机上用ASP.net的体会--M2上也用ASP+