Asp.net 3.5控件和组件开发技术系列—服务器控件属性(五)
intMaxValue) { return true; } else { return false; } } } 代码中验证类名为NumValidateAttribute ,从System.Attribute 派生而来,有些时候根据需 要间接继承System.Attribute 也是可以的。 类中必须有一个带两个参数的构造方法,分别表示验证范围的最大值和最小值,然后定义两个 属性:MinValue 和MaxValue ,分别存储验证范围的最小值和最大值。最后面的方法 ValidateResult 是主要的验证方法,它有一个参数,表示要验证的值,如果此值在最大值和最小 值区间,则返回true ,表示是合法输入;否则,返回false ,表示验证失败。 验证类NumValidateAttribute 上方有一个很重要的设计时属性: [AttributeUsage(AttributeTargets.Property,AllowMultiple=true,Inherited=true)] AttributeUsage 完整命名为System.AttributeUsageAttribute ,它包含三个对自定义属性的 创建具有重要意义的成员:AttributeTargets 、AllowMultiple 和Inherited 。该类主要说明 NumValidateAttribute 的用法(作用于类还是属性,是否允许被继承,等等)。我们只需要指定 各个参数即可,如果使用位置不正确,系统会自动提示警告信息。 AttributeTargets 指定可以对应用程序的哪些元素应用此属性。在前面的示例中指定了 AttributeTargets.Property ,指示该属性只可以应用到类中的属性,还可以指定 AttributeTargets. Class ,表示属性只可以应用于类元素;或指定AttributeTargets.Method , 表示属性只可以应用于某个方法。还可通过"|" 设置AttributeTargets 的多个实例。下列代码段 指定自定义属性可应用到任何类或方法: [AttributeUsage (AttributeTargets.Class | AttributeTargets.Method)] 如果某个属性可以应用到AttributeTargets 下的所有类型,则需要作如下设置即可:
AttributeUsage 枚举类应用的范围不仅仅包括类和属性,共有15 个可应用元素,下面是它的 源代码:
|
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |