DataList的自定义模版列绑定及Container

 使用datalist可以灵活的定义你的数据展示,它比datagrid有着更好的灵活性。比如,我们定义了一个datalist,在page_load()事件中取出数据,绑定datalist,一切与datagrid无异。
None.gif private   void  Page_Load( object  sender, System.EventArgs e)
ExpandedBlockStart.gifContractedBlock.gif        
dot.gif {
InBlock.gif            
// 在此处放置用户代码以初始化页面
InBlock.gif
            System.Data.SqlClient.SqlConnection con=new System.Data.SqlClient.SqlConnection("data source=(local);user id=sa;database=pubs");
InBlock.gif            System.Data.SqlClient.SqlCommand sqlcom
=new System.Data.SqlClient.SqlCommand("select * from titles",con);
InBlock.gif            sqlcom.Connection.Open();
InBlock.gif            System.Data.SqlClient.SqlDataReader sqlreader
=sqlcom.ExecuteReader();
InBlock.gif            
this.DataList1.DataSource=sqlreader;
InBlock.gif            
this.DataList1.DataBind();
InBlock.gif            sqlcom.Connection.Close();
ExpandedBlockEnd.gif        }
下面,重要的是,如何编辑定义你的datalist样式,比如,要定义几列格式一样的数据展示,我们可以定义datalist的RepeatColumns属性。技巧同编写所有的web窗体一样,请在itemtemplate里面嵌套一个table.比如下面这样:
None.gif < asp:datalist  id ="DataList1"  runat ="server"  RepeatColumns ="3" >
None.gif                    
< ItemTemplate >
None.gif                        
< TABLE  style ="FONT: 10.5pt 宋体"  cellPadding ="10" >
None.gif                            
< TR >
None.gif                                
< TD  width ="1"  bgColor ="#bd8672" >
None.gif                                
< TD  vAlign ="top" >< IMG  src ="aspplus/cale.gif"  align ="top" >
None.gif                                
</ TD >
ExpandedBlockStart.gifContractedBlock.gif                                
< TD  vAlign ="top" >< B > 书名: </ B > <% dot.gif # DataBinder.Eval(Container.DataItem,"Title") %> < BR >
ExpandedBlockStart.gifContractedBlock.gif                                    
< B > 价格: </ B > <% dot.gif # DataBinder.Eval(Container.DataItem,"Price") %> < BR >
None.gif                                
</ TD >
None.gif                            
</ TR >
None.gif                        
</ TABLE >
None.gif                    
</ ItemTemplate >
None.gif                
</ asp:datalist ></ FONT ></ form >
   虽然我们紧紧写了一个模版列的代码,数据查询后所对应的所有的行,都将一一显示出来。
   这里注意的是:<%%>与<%#%>的区别,看上面我们可以发现,前者是全局引用,而后者,仅仅在databind()发生后才编译代码,这是两者的区别。
   同样注意的是Container.DataItem,它据说是指的局部变量的引用,datarowview ?我想我没有弄清楚它到底是怎么回事的引用。
  但是结果,是我们所想要的。很好。

转载于:https://www.cnblogs.com/bluetooth/archive/2005/10/27/263092.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值