Repeater - 重复器,用来展示泛型集合中的数据
五大模板:
1、HeaderTemplate - 头模板,加载时会在开始执行一次
2、FooterTemplate - 脚模板,加载时会在最后执行一次
3、ItemTemplate - 项模板,数据源的数据有多少条就会重复多少次
4、AlternatingItemTemplate - 交替项模板,会与项模板交替执行,直到数据源中的数据重复完毕
后台绑定数据:
//1、需要把数据查出来
List<Users> list = new UsersData().SelectAll();
//2、绑定显示
Repeater1.DataSource = list; //数据指向,还未绑定
Repeater1.DataBind(); //真正的绑定数据
protected void Page_Load(object sender, EventArgs e) { //1、需要把数据查出来 List<Stu> list = new StuData().selectAll(); //2、绑定显示 Repeater1.DataSource = list; //数据指向,还未绑定 Repeater1.DataBind(); //真正的绑定数据 }
字段扩展:
-------(在模型类中)-----
/// <summary> /// 民族编号变成名字 /// </summary> public string folkname { get { string end = "<无>"; cmd.CommandText = "select *from folk where folkcode=@a"; cmd.Parameters.Clear(); cmd.Parameters.Add("@a",folk); conn.Open(); SqlDataReader dr = cmd.ExecuteReader(); if (dr.HasRows) { dr.Read(); end = dr["folkname"].ToString(); } conn.Close(); return end; } }
----------
/// <summary> /// 显示男女 /// </summary> public string SexStr { get { return sex ? "男" : "女"; } }
-----------
<td><%#Eval("birthday","{0:yyyy年MM月dd日}") %></td>
-----生日显示
--------
格式化显示数据:
------(Default2.aspx.cs)--
public string SexImg() //性别显示图片 { return Convert.ToBoolean(Eval("Sex")) ? "项目照片/man.png" : "项目照片/woman.png"; }
-----(Default2.aspx)----
<td><img src="<%# SexImg() %>" /></td>
-----(Default2.aspx.cs)-----
public string ShowRed() //性别为女时,字体变红 { string end = ""; if (!Convert.ToBoolean(Eval("sex"))) { end = "color:red;"; } return end; }
------(Default2.aspx.cs)-----
public string ShowBold() //生日为1990年的 字体加粗 { string end = ""; if (Convert.ToDateTime(Eval("Birthday")).Year == 1990) { end = "font-weight:bold;"; } return end; }
-----(Default2.aspx)-----
<tr class="tr_item" style="<%# ShowRed() %><%# ShowBold() %>">
页面中调用后台函数:
属性值调用 - <td><img src="<%# SexImg() %>" /></td>
样式表调用 - <tr class="tr_item" style="<%# ShowRed() %><%# ShowBold() %>">
---------------------------------------
TextMode--文本框行为模式----Password--(密码显示为*)