標籤:asp.net table
.aspx代碼如下:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default12.aspx.cs" Inherits="Default12" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head runat="server"> <title></title> <style type ="text/css"> #tbl_summary{ border:1px solid black;} #tbl_summary td,#tbl_summary th { padding:10px; border:1px solid silver;} td span { margin:10px;} </style></head><body> <form id="form1" runat="server"> <div> <asp:Table ID="tbl_summary" runat="server"> <asp:TableHeaderRow> <asp:TableHeaderCell ColumnSpan="4">成績匯總</asp:TableHeaderCell> </asp:TableHeaderRow> </asp:Table> </div> </form></body></html>
.aspx.cs代碼如下:
using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;using System.Data.OleDb;public partial class Default12 : System.Web.UI.Page{ string str_cnn = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source="; string str_sourcefile = "mdb\\mydb.mdb"; OleDbConnection cnn; OleDbCommand cmd; OleDbDataReader datar; string str_sql; protected void Page_Load(object sender, EventArgs e) { //構建表 //【語文】不及格,【語文】優秀,【數學】不及格,【數學】優秀 //[Good]_cj_yuwen,[Fail]_cj_yuwen,[Good]_cj_shuxue,[Fail]_cj_shuxue string[] _sarr1 = { "Good", "Fail" }; string[] _sarr2 = { "優秀", "不及格" }; string[] _sarr_km = { "cj_yuwen", "cj_shuxue", "cj_huaxue", "cj_wuli", "cj_yingyu" }; string[] _sarr_kmname = { "語文", "數學", "化學", "物理", "英語" }; TableRow _tr; TableCell _td; for (int i = 0; i < _sarr_km.Length; i++) { _tr = new TableRow(); for (int j = 0; j < _sarr1.Length; j++) { _td = new TableCell(); _td.Text = _sarr_kmname[i] + _sarr2[j]; _tr.Cells.Add(_td); _td = new TableCell(); _td.ID = _sarr1[j] + _sarr_km[i]; _tr.Cells.Add(_td); } tbl_summary.Rows.Add(_tr); } string str_conn = str_cnn + MapPath(str_sourcefile); cnn = new OleDbConnection(str_conn); cnn.Open(); str_sql = "SELECT * FROM tb_chenji"; cmd = new OleDbCommand(str_sql, cnn); datar = cmd.ExecuteReader(); Label lab_name; Single _f; while (datar.Read()) { //lab_name = new Label(); lab_name.Text = datar["cj_name"].ToString(); foreach (string _skm in _sarr_km) { _f = Convert.ToSingle(datar[_skm].ToString());//<strong><em>_skm既作為變數名又作為構建ID的因子,這種方法很重要</em></strong> if (_f < 60) { lab_name = new Label(); lab_name.Text = datar["cj_name"].ToString(); _td = (TableCell)FindControl("Fail" + _skm); _td.Controls.Add(lab_name); } if (_f > 85) { lab_name = new Label(); lab_name.Text = datar["cj_name"].ToString(); _td = (TableCell)FindControl("Good" + _skm); _td.Controls.Add(lab_name); } } } cnn.Close(); }}
效果如下:
asp.net後台代碼填充前台資料執行個體