zoukankan
html css js c++ java
ITempate自定义数据捆绑模板
转自:
http://www.cnblogs.com/DavidFan/archive/2007/06/01/767853.html
代码其实比较简单了,相信大家能够看得懂,我就不多作解释了。
public
class
MyTemplate : ITemplate
{
ITemplate 成员
#region
ITemplate 成员
public
void
InstantiateIn(Control container)
{
Literal lbl
=
new
Literal();
lbl.DataBinding
+=
new
EventHandler(lbl_DataBinding);
//
关键在这里
container.Controls.Add(lbl);
}
#endregion
private
void
lbl_DataBinding(
object
sender, EventArgs e)
{
Literal lbl
=
(Literal)sender;
if
(DataBinder.Eval(((DataListItem)lbl.NamingContainer).DataItem,
"
HaveImg
"
).ToString()
==
"
False
"
)
{
lbl.Text
=
"
<a href=\
""
+ DataBinder.Eval(((DataListItem)lbl.NamingContainer).DataItem,
"
Link
"
).ToString() +
"
\
"
>
"
+
DataBinder.Eval(((DataListItem)lbl.NamingContainer).DataItem,
"
Name
"
).ToString()
+
"
</a>
"
;
}
else
lbl.Text
=
"
<a href=\
""
+ DataBinder.Eval(((DataListItem)lbl.NamingContainer).DataItem,
"
Link
"
).ToString() +
"
\
"
><img alt=\
""
+ DataBinder.Eval(((DataListItem)lbl.NamingContainer).DataItem,
"
Name
"
).ToString() +
"
\
"
src=\
""
+ DataBinder.Eval(((DataListItem)lbl.NamingContainer).DataItem,
"
ImgUrl
"
).ToString() +
"
\
"
border=\
"
0
\
"
width=\
"
95
\
"
height=\
"
38
\
"
/></a>
"
;
}
}
用的时候
datalist.ItemTemplate
=
new
MyTemplate();
补充一下, 如果连接的数据是xml数据源, 那么用
XPathBinder
代替 DataBinder
查看全文
相关阅读:
Angular 路由的参数传递
Angular 指令的属性和事件绑定
Angular 组件的双向绑定
Angular 组件视图封装模式
Angular 组件生命周期的顺序
简谈 Angular 动态绑定样式的几种方法
Angular 表单快速入门
如何在 Angular CLI 创建的项目中自定义 webpack 配置
bootstrap图标菜单按钮组件
vue指令
原文地址:https://www.cnblogs.com/skyfei/p/1043289.html
最新文章
小程序页面间传值问题
5-4随笔(说好的五四放半天假呢!!!)
23日工作记录
location.hash的解释
ajax和jsonp
json和jsonp
H5中的localStorage笔记
观一个简单手机端发现的未知东东大杂烩
算法练习:最小生成树 (Minimum Spanning Tree)
Mac 下的矢量图设计工具
热门文章
News summary on C# and .NET
C# 版本的24点实现
练习 Dijkstra 最短路径算法。
Racket 版本的 24 点实现
初学 Haskell 练习:算24点
Clojure 下的 xpath 库
Clojure 的 Enlive 库尝试
Maker's Schedule, Manager's Schedule
修改 VS Code 的默认终端
Angular 多重路由
Copyright © 2011-2022 走看看