首页 > 代码库 > web端 repeat和简单控件
web端 repeat和简单控件
<%@ %> - 这里面写一些声明和引用的
<% %> - 编写C#代码的
<%= %>
<%# %>
Repeater - 重复器 相当于winform的listview
HeaderTemplate - 先执行,执行一次
FooterTemplate - 最后执行,执行一次
ItemTemplate - 在Header之后执行,有多少条数据绑定就执行多少次
AlterNatingItemTemplate - 交替项模板,与ItemTemplate交替执行
<%# Eval("属性名","可选,格式字符串") %>
<%# 方法名() %>
绑定数据
List<Users> ulist=new UsersData().SelectAll();
Repeat1.datasource=ulist; //数据源是ulist
Reapeat1.Bind(); 数据绑定
展示使用
<%#Eval("属性名") %>
例如:
封装类
using System; using System.Collections.Generic; using System.Linq; using System.Web; /// <summary> /// Users 的摘要说明 /// </summary> public class Users { public int Ids { get; set; } public string UserName { get; set; } public string Password { get; set; } public string NickName { get; set; } public bool Sex { get; set; } public string Sexstr { get { return Sex ? "男" : "女"; } } public DateTime BirthDay { get; set; } public int Age { get { return DateTime.Now.Year - BirthDay.Year; } } public string Nation { get; set; } public string NationName { get { return new UsersData().SelectNationName(Nation); } } }
封装方法
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Data.SqlClient; /// <summary> /// UsersData 的摘要说明 /// </summary> public class UsersData { SqlConnection conn = null; SqlCommand cmd = null; public UsersData() { conn = new SqlConnection("server=.;database=dat0216;user=sa;pwd=123;"); cmd = conn.CreateCommand(); } public List<Users> SelectAll() { List<Users> ulist = new List<Users>(); cmd.CommandText = "select *from Users"; conn.Open(); SqlDataReader dr = cmd.ExecuteReader(); while (dr.Read()) { Users u = new Users(); u.Ids = Convert.ToInt32(dr[0]); u.UserName = dr[1].ToString(); u.Password = dr[2].ToString(); u.NickName = dr[3].ToString(); u.Sex = Convert.ToBoolean(dr[4]); u.BirthDay = Convert.ToDateTime(dr[5]); u.Nation = dr[6].ToString(); ulist.Add(u); } conn.Close(); return ulist; } public string SelectNationName(string code) { string end = "<暂无>"; cmd.CommandText = "select *from Nation where NationCode=@a"; cmd.Parameters.Clear(); cmd.Parameters.Add("@a",code); conn.Open(); SqlDataReader dr = cmd.ExecuteReader(); if (dr.HasRows) { dr.Read(); end = dr["NationName"].ToString(); } conn.Close(); return end; } public bool HasUserName(string name) { bool IsName = false; cmd.CommandText = "select *from Users where UserName=@a"; cmd.Parameters.Clear(); cmd.Parameters.Add("@a",name); conn.Open(); SqlDataReader dr = cmd.ExecuteReader(); if (dr.HasRows) { dr.Read(); IsName = true; } conn.Close(); return IsName; } }
绑定数据
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; public partial class _Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { Repeater1.DataSource = new UsersData().SelectAll(); Repeater1.DataBind(); } }
展示数据
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %> <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title></title> <link href=http://www.mamicode.com/"CSS/StyleSheet.css" rel="stylesheet" /> </head> <body> <form id="form1" runat="server"> <div style="width: 100%;"> <div class="div1"> <div id="div1"> <a href=http://www.mamicode.com/"Default2.aspx" target="_blank">注册页面</a> </div> <asp:Repeater ID="Repeater1" runat="server"> <HeaderTemplate> <table class="table1"> <tr class="tr1"> <td>编号</td> <td>用户名</td> <td>密码</td> <td>昵称</td> <td>性别</td> <td>生日</td> <td>年龄</td> <td>民族</td> </tr> </HeaderTemplate> <ItemTemplate> <tr class="tr2"> <td><%#Eval("Ids") %></td> <td><%#Eval("UserName") %></td> <td><%#Eval("PassWord") %></td> <td><%#Eval("NickName") %></td> <td><%#Eval("Sexstr") %></td> <td><%#Eval("Birthday") %></td> <td><%#Eval("Age") %></td> <td><%#Eval("NationName") %></td> <td></td> </tr> </ItemTemplate> <FooterTemplate> </table> </FooterTemplate> </asp:Repeater> </div> </div> </form> </body> </html>
样式表
.div1 { width:60%; margin-left:20%; background-color:pink; } .table1 { background-color:navy; text-align:center; } .tr1 { font-size:30px; color:white; } .tr2 { background-color:white; } #div1 { margin-right:10%; }
假设 我要把年龄大于16 的数据 背景色改为红色
先把背景色 写好 style=" background-color: white";
在写在封装类中
public string WhiteOrRed
{
get{int Age>16?"red":"white";}
}
在把style样式改为 style="background-color:<% #Eval("WhiteOrRed") %> ; ";
或者修改性别 插入性别图片也是如此;
常用控件
简单控件
label 控件
使用控件的代码
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
启用网页 看到的代码是
<span id="Label1">Label</span>
也就是说label 相当于 span
不过span 里内容多大 就显示多大 要占用多大空间
样式表要写:display:inline-block;
1.lateral 控件
网页和网页代码都是显示 lateral text的内容
所以有时候可以这么写
lateral1.text="<script>alert("要弹出的内容");</script>";
2.button控件
相当于html的 submit
使用控件的代码
<asp:Button ID="Button1" runat="server" Text="Button" />
转意网页的代码
<input type="submit" name="Button1" value="http://www.mamicode.com/Button" id="Button1" />
3.TextBox - TextMode
SingLine - type="text"
PassWord - type="password"
MultiLine - <textarea>
4.HiddenField - type="hidden"
5.Button - submit
6.ImageButton - type="image"
<asp:ImageButton ID="ImageButton1" runat="server" ImageUrl="images/0.png"/> 图片路径
web端 repeat和简单控件