time 
设为首页】【收藏本站
当前位置: 主页 > 程序设计 > .net > Visual Studio > 在VS2008中创建自定义控件(十四)内镶属性与内联属性的优先级

在VS2008中创建自定义控件(十四)内镶属性与内联属性的优先级

时间:2010-12-02 00:00 点击:839次 字体:[ ]




本文目的:

1、了解内镶属性和内联属性的优先级谁高谁低。

2、将内联属性从属性中移出


    在《在VS2008中创建自定义控件(十三)添加内镶属性》中介绍过什么是内镶属性,以及怎么样添加内镶属性。那什么是内联属性呢?内联属性也就是前面我们在《在VS2008中创建自定义控件(十一)添加在属性窗口中可折叠的属性(一)》和《在VS2008中创建自定义控件(十二)添加在属性窗口中可折叠的属性(二)》介绍过的使用“-”联接符的属性,如下图所示。

在VS2008中创建自定义控件(十四)内镶属性与内联属性的优先级_www.fengfly.com

    在《在VS2008中创建自定义控件(十三)添加内镶属性》中,我们添加了内镶属性之后,内联属性和内镶属性是可以同时使用的,如下图所示。

在VS2008中创建自定义控件(十四)内镶属性与内联属性的优先级_www.fengfly.com

 

    在上图中,我们同时使用了内镶属性和内联属性,并且,两个属性值都不相同,那么最后的运行结果将会怎么样?究竟是内联属性的优先级高还是内联属性的优先级高?以上代码的运行结果如下图所示。

在VS2008中创建自定义控件(十四)内镶属性与内联属性的优先级_www.fengfly.com

 

    从上图中可以看出,内镶属性的优先级比内联属性的优先级高。所以内联属性的属性值都没有在浏览器窗口中显示出来。事实上,如果我们直接在属性窗口修改或添加折叠属性的属性值时,VS也只会同步修改内镶属性,而不是去修改内联属性。如下图所示。

在VS2008中创建自定义控件(十四)内镶属性与内联属性的优先级_www.fengfly.com

 

    从上图中要看到,当我们在修改“字”属性时,aspx的源代码窗口中,只有内镶属性值被修改了,而内联属性值并没有变化。上图的运行结果如下图所示。

在VS2008中创建自定义控件(十四)内镶属性与内联属性的优先级_www.fengfly.com

 

    那么,是不是在使用了内镶属性之后,就不能使用内联属性了呢?事实上也并非如此,如下面图所示,当我们不使用内镶属性时,内联属性也一样可以使用。

在VS2008中创建自定义控件(十四)内镶属性与内联属性的优先级_www.fengfly.com

 

 

    那么,既然内联属性只有当内镶属性不存在时才起作用,那么,我们可不可以只使用内镶属性而不使用内联属性呢?答案是可以的,具体操作方法其实在《在VS2008中创建自定义控件(十一)添加在属性窗口中可折叠的属性(一)》就已经介绍过,在那篇博文中,曾经介绍过特性[DesignerSerializationVisibility(DesignerSerializationVisibility.Content)]的作用就是在代码生成器中产生的是属性内容的代码,那么, 只要将这一行代码删除即可。

    删除代码生成项目之后,再看aspx源代码窗口的,如下图所示。

在VS2008中创建自定义控件(十四)内镶属性与内联属性的优先级_www.fengfly.com

 

    从上图中我们可以看出,内联属性已经不能使用了。

本文源码下载



本文地址 : http://www.fengfly.com/plus/view-192997-1.html
标签: VS2008
------分隔线----------------------------
最新评论 查看所有评论
发表评论 查看所有评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
验证码: