Repeater
Repeater是使用模板来设计界面的。它有五个模板:HeaderTemplate,FooterTemplate,ItemTemplate,AlternatingItemTemplate,SeperatorTempate简单的数据显示思路:1.在HTML界面中使用模板来设计展显的界面。2.在C#界面中,查询数据,绑定显示。步骤:1.把Repeater拖到界面上。做界面2.使用DW做好界面。3.把DW做好界面,拆开贴到Repeater不同的模板上去。4.使用<%# Eval("列名/属性名")%>做代码:5.在C#代码中查询数据6.把查询出来的数据,绑定到Repeater中显示。用C#代码控制界面上显示:1.在C#代码写函数。空参,返回字符串,public2.在HTML的Repeater模板中,调用上面的方法。
一个综合练习:人员,家庭,民族,工作表。
代码:
主表”Default5.aspx“
主表”Default5.aspx.cs“
public partial class Default5 : System.Web.UI.Page{ public string Birthdaystring() { string shengri=Convert.ToDateTime(Eval("Birthday")).ToString("yyyy年MM月dd日"); return shengri; } public string Nationname() { //先取了当前人员的民族代号 NationData da = new NationDA().Select(Eval("Nation").ToString()); if (da!=null) { return da.Name; } else { return " <空> "; } } public string Sexstring() { //取人员性别数据 bool xingbie = Convert.ToBoolean(Eval("Sex")); //变成字符串返回去 bool sex = Convert.ToBoolean(Eval("Sex")); string pic = (sex == true) ? "boy.png" : "girl.png"; string img = " "; return img; } private void Fillinfo() { Listlist = new InfoDA().Select(); Repeater1.DataSource = list; Repeater1.DataBind(); } protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { Fillinfo(); } } public string showbgcolor() { //首先找出汉族的code值 string nationcode=Eval("Nation").ToString(); //然后判断汉族如何,其他少数民族如何 if (nationcode=="n001") { return ""; } else { return "style='background-color:#ffff99;font-weight:bold;'"; } }} 空>
修改人员信息表”Edit.aspx.cs“
public partial class update : System.Web.UI.Page{ private void LoadInfo() { //把传过来的人员代号取出来 string code = Request["id"].ToString(); //查出当前人员的信息 InfoData data = new InfoDA().Select(code); if (data!=null) { //把查出来的数据放到页面显示出来 lblCode.Text = data.Code; txtName.Text = data.Name; rblSex.SelectedIndex = (data.Sex == true) ? 0 : 1; ddlNation.SelectedValue = data.Nation; txtBirthday.Text = data.Birthday.ToString("yyyy-MM-dd"); } } private void FillNation() { Listlist = new NationDA().Select(); ddlNation.DataSource = list; ddlNation.DataTextField = "Name"; ddlNation.DataValueField = "Code"; ddlNation.DataBind(); } protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { //把民族下拉列表填进数据中去 FillNation(); //装载当前人员的原有信息 LoadInfo(); } } protected void btnUpdate_Click(object sender, EventArgs e) { //取界面上的数据 InfoData data = new InfoData(); data.Code = lblCode.Text; data.Name = txtName.Text; data.Sex = Convert.ToBoolean(rblSex.SelectedValue); // data.Sex = ( rblSex.Text == "男" )? true : false; data.Nation = ddlNation.SelectedValue; data.Birthday = Convert.ToDateTime(txtBirthday.Text); //填到数据库中去 new InfoDA().Update(data); //返回表格显示界面 Response.Redirect("Default5.aspx"); }}
删除人员”delete.aspx.cs“
protected void Page_Load(object sender, EventArgs e) { //取得要删除人员的代号 string code = Request["id"].ToString(); //执行删除 FamilyDA.DeleteByInfoCode(code); WorkDA.DeleteByInfoCode(code); InfoDA.Delete(code); //返回列表 Response.Redirect("Default5.aspx"); }}