打印本文 打印本文 关闭窗口 关闭窗口
《ASP.Net快速入门》学习笔记2
作者:武汉SEO闵涛  文章来源:敏韬网  点击数2632  更新时间:2009/4/23 10:36:08  文章录入:mintao  责任编辑:mintao
属性类似具有访问器方法的“聪明”字段。应该从控件公开属性而不是公开公共字段,因为属性允许数据隐藏、可以版本化并受可视化设计器的支持。属性具有设置和检索属性的 get/set 访问器方法,并允许在需要时执行附加的程序逻辑。

 

如果 A 类具有一个类型为 B 类的属性,则 B 的属性(如果有)称为 A 的子属性。下面的示例定义自定义控件 SimpleSubProperty,该控件具有 Format 类型的属性。Format 是具有两个基元属性的类——ColorSize,这两个属性反过来成为 SimpleSubProperty 的子属性。

 

注意 ASP.NET 具有设置子属性的特殊语法。下面的代码示例显示如何以声明方式设置 SimpleSubProperty 上的 Format.ColorFormat.Size 子属性。“-”语法指示子属性。

<SimpleControlSamples:SimpleSubProperty Message="Hello There" Format-Color="red" Format-Size="3" runat=server/>

每个控件都具有从 System.Web.UI.Control 继承的 Controls 属性. 这是表示控件的子控件(如果有)的集合属性

如果控件未用 ParseChildrenAttribute 标记,或是标记为 ParseChildrenAttribute(ChildrenAsProperties = false),则当控件在页上以声明方式使用时,ASP.NET 页框架将应用以下分析逻辑。如果分析器在控件的标记内遇到嵌套控件,它将创建嵌套控件的实例并将它们添加到控件的 Controls 属性。标记之间的文本添加为 LiteralControl。任何其他嵌套元素都生成分析器错误。
:
 <SimpleControlSamples:SimpleInnerContent id="MyControl" runat=server>

             我的消息在控件标记内!!!!

          </SimpleControlSamples:SimpleInnerContent>

以上正确

<SimpleControlSamples:SimpleInnerContent id="MyControl" runat=server>

            <input type=”text” runat = server>          </SimpleControlSamples:SimpleInnerContent>

以上错误,因为<input type=”text” runat = server>是一个控件,标记之间只能添加文本,要添加控件,必须设置属性ParseChildrenAttribute=true

 

 

在分析 ASP.NET 页时,样式信息被填充到 System.Web.UI.HtmlControls.HtmlControl 类上的 Style 属性(CssStyleCollection 类型)中。该属性本质上是一个词典,它将控件的样式公开为每个样式属性键值的字符串索引集合。例如,可以使用下面的代码在 HtmlInputText 服务器控件上设置并随后检索 width 样式属性。

 

<script language="C#" runat="server" >

 

    void Page_Load(Object sender, EventArgs E) {

        MyText.Style["width"] = "90px";

        Response.Write(MyText.Style["width"]);

    }

 

</script>

 

<input type="text" id="MyText" runat="server"/>

 

<script language="VB" runat="server" >

 

    Sub Page_Load(Sender As Object, E As EventArgs)

        MyText.Style("width") = "90px"

上一页  [1] [2] [3]  下一页

打印本文 打印本文 关闭窗口 关闭窗口