即:学院表和专业表。其中学院包括若干专业,有个XYID进行关联。
学院表:
专业表:
先说说前台代码,大致由一固定的表格,和若干动态表格构成,这里我用到了dataLisT这个控件。
院系 | 专业 | 学历 | 总计 |
本科合计 |
效果如下:
后台代码如下:
DB db = new DB();
public static int count=0;
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
dlbind();
}
}
private void dlbind()
{
DataTable dt = new DataTable();
dt = db.SqlDataset("select * from ssyx");
dlzy.DataSource = dt.DefaultView;
dlzy.DataBind();
}
protected void dlzy_ItemDataBound(object sender, DataListItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
Label lab = (Label)e.Item.FindControl("lblzy");
int id = Convert.ToInt32(DataBinder.Eval(e.Item.DataItem, "yxid"));
string cmdStr = "select * from zyjieshao where ssyx=" + id;
DataTable dt=new DataTable();
dt=db.SqlDataset(cmdStr);
lab.Text = "
"; lab.Text += dt.Rows[i][1].ToString(); lab.Text+=" | 本科 | "; lab.Text += dt.Rows[i][7].ToString()+" |
}
}
这里最关键的地方在于在DATALIST里面进行数据再次邦定,这里是在自带的ItemDataBound()方法里面实现的。其中 int id = Convert.ToInt32(DataBinder.Eval(e.Item.DataItem, "yxid"));
是查找出第一次绑定时的学院ID,因为我们需要这个ID来找到其所属的若干专业。
还有COUNT这个值是用来计算人数总数的,很简单,不再赘述。
这个我自己想到的,用asp:Label 这个控件来装载标记语言,使之动态生成了右边的表格。
效果如下:
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/12639172/viewspace-610371/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/12639172/viewspace-610371/