日记 [2006年05月07日]
时间:2006-05-07 来源:yakecoco
500)this.width=500;" border=0>
首先祝贺丽颖获得冠军,呵呵,绝对是个大美女呀!!!
Web.UI
首先对Web.UI里Template的总体介绍
Templates是最有效的获取Web.UI控件的可视化部分,除了经典的ASP。NET的服务器摸板(server templates),3.0版的ComponentArt Web.UI在这个领域内引入了一个新的概念—客户端模板(client templates)
server Templates
server Templates 在Web.UI 中经常用来定义在ASPX文件中一个单独的区域,而且是通过属性来表现的。一个典型的SERVER TEMPLATE的定义如下所示:(以GRID为例)
<ComponentArt:Grid ID="Grid1" runat="server" Width="250" Height="150">
...
<ServerTemplates>
<ComponentArt:GridServerTemplate ID="LinkButtonTemplate">
<Template>
<asp:LinkButton runat="server" Text='<%# Container.DataItem["FullName"] %>' />
</Template>
</ComponentArt:GridServerTemplate>
</ServerTemplates>
</ComponentArt:Grid>
以上的GRID中是一个包含linkButton控件的摸板。包括template和linkButton的摸板将被用来创造摸板里的每一项。数据项中的“FULLNAME”字段在(GridItem中摸板使用的)将被设置为LinkButton的Text属性。为了使用这个摸板,我们应当设置DataCellServerTemplateID属性在GridColumn为“LinkButtonTemplate”。 在ComponentArt's navigation controls中,句法是有点不同不过在概念上是相同的。下面的例子是ComponentArt TreeView。通过在TreeViewNode中使用templates,我们可以设置节点的TemplateId属性为“LinkButtonTemplate”. <ComponentArt:TreeView ID="Grid1" runat="server" Width="250" Height="150"> ... <Templates>
<ComponentArt:NavigationCustomTemplate ID="LinkButtonTemplate">
<Template>
<asp:LinkButton runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "Text") %>' />
</Template>
</ComponentArt:NavigationCustomTemplate>
</Templates>
</ComponentArt:TreeView>
取代了内部服务器摸板的控件可以包含状态,服务器响应事件,并且可以做除了来自ASP。NET SERVER控件扩展功能的所有事情。 Client Templates 总体介绍 Client Templates是ComponentArt's客户端表现技术的一个自然的扩充。由于数据是输出在客户端的且内容也产生在那儿,摸板化的可能性被扩展为一个表现过程。同时,既然客户端的表现不仅是在初始化LOAD中可以实现而且在控件被使用是也能实现,所以客户摸板为自定义的内容(服务器摸板不能实现的)的打开成为新的可能性。另一个CLIENT TEMPLATE重要的好处,绑定数据发生在客户,只在摸板上实现,而不包括它的实例,也可写在客户断,比起SERVER摸板来根本上减少页面脚本语言。 Description(描述) Client templates 是组成HTML标记和客户端数据绑定表达式。这个表达式的使用可以用JAVASCRIPT来写。每个表达式都是由客户端在翻译时评价的并且将被新的评价结果取代。这样,表达失应该被改为字符串(string) 下面的例子是一个使用GRID数据单元的client template <ComponentArt:ClientTemplate ID="NameTemplate">
ClientTemplate for <b>## DataItem.GetMember("Name").Value ##</b> rendered at ## (new Date()) ##
</ComponentArt:ClientTemplate>
在定义后,Client template能够与显示的使用属性部分想联系,在上边的离子,我们把GridColumn的摸板通过设置它的DataCellClientTemplateId属性为“NameTemplate”. 依靠他们的使用,客户端摸板可以利用预定义的数据项对象。这个名字可以由摸板初始化机制在特殊数据内容需要被提供给客户数据帮定的情况下预定义的。在上面的例子可以看出,client template是用于GRID单元的,且数据单元将为预设置为当前被绑订的客户端数据项对象。另一个被利用的变量是父接点,这个节点连接了主客户端的控件对象。 客户摸板是一个严格静态的标记,服务器控件不包含在客户摸板。如果这个功能性被使用,客户摸板不应当使用。
...
<ServerTemplates>
<ComponentArt:GridServerTemplate ID="LinkButtonTemplate">
<Template>
<asp:LinkButton runat="server" Text='<%# Container.DataItem["FullName"] %>' />
</Template>
</ComponentArt:GridServerTemplate>
</ServerTemplates>
</ComponentArt:Grid>
以上的GRID中是一个包含linkButton控件的摸板。包括template和linkButton的摸板将被用来创造摸板里的每一项。数据项中的“FULLNAME”字段在(GridItem中摸板使用的)将被设置为LinkButton的Text属性。为了使用这个摸板,我们应当设置DataCellServerTemplateID属性在GridColumn为“LinkButtonTemplate”。 在ComponentArt's navigation controls中,句法是有点不同不过在概念上是相同的。下面的例子是ComponentArt TreeView。通过在TreeViewNode中使用templates,我们可以设置节点的TemplateId属性为“LinkButtonTemplate”. <ComponentArt:TreeView ID="Grid1" runat="server" Width="250" Height="150"> ... <Templates>
<ComponentArt:NavigationCustomTemplate ID="LinkButtonTemplate">
<Template>
<asp:LinkButton runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "Text") %>' />
</Template>
</ComponentArt:NavigationCustomTemplate>
</Templates>
</ComponentArt:TreeView>
取代了内部服务器摸板的控件可以包含状态,服务器响应事件,并且可以做除了来自ASP。NET SERVER控件扩展功能的所有事情。 Client Templates 总体介绍 Client Templates是ComponentArt's客户端表现技术的一个自然的扩充。由于数据是输出在客户端的且内容也产生在那儿,摸板化的可能性被扩展为一个表现过程。同时,既然客户端的表现不仅是在初始化LOAD中可以实现而且在控件被使用是也能实现,所以客户摸板为自定义的内容(服务器摸板不能实现的)的打开成为新的可能性。另一个CLIENT TEMPLATE重要的好处,绑定数据发生在客户,只在摸板上实现,而不包括它的实例,也可写在客户断,比起SERVER摸板来根本上减少页面脚本语言。 Description(描述) Client templates 是组成HTML标记和客户端数据绑定表达式。这个表达式的使用可以用JAVASCRIPT来写。每个表达式都是由客户端在翻译时评价的并且将被新的评价结果取代。这样,表达失应该被改为字符串(string) 下面的例子是一个使用GRID数据单元的client template <ComponentArt:ClientTemplate ID="NameTemplate">
ClientTemplate for <b>## DataItem.GetMember("Name").Value ##</b> rendered at ## (new Date()) ##
</ComponentArt:ClientTemplate>
在定义后,Client template能够与显示的使用属性部分想联系,在上边的离子,我们把GridColumn的摸板通过设置它的DataCellClientTemplateId属性为“NameTemplate”. 依靠他们的使用,客户端摸板可以利用预定义的数据项对象。这个名字可以由摸板初始化机制在特殊数据内容需要被提供给客户数据帮定的情况下预定义的。在上面的例子可以看出,client template是用于GRID单元的,且数据单元将为预设置为当前被绑订的客户端数据项对象。另一个被利用的变量是父接点,这个节点连接了主客户端的控件对象。 客户摸板是一个严格静态的标记,服务器控件不包含在客户摸板。如果这个功能性被使用,客户摸板不应当使用。
相关阅读 更多 +