All articles| All Pictures| All Softwares| All Video| Go home page| Write articles| Upload pictures

Reading number is top 10 articles
DataGrid单击一行服务器事件_[Asp.Net教程]
资深专家手把手教你安装MYSQL数据库_php资料_编程技术
PHP会话(Session)使用入门
SQL,SERVER中字段类型及说明_mssql学习_编程技术
Xml_javascript分页_[XML教程]
XML字符串和XML DOCUMENT的相互转换_[XML教程]
SQL,Server如何得详细错误处理信息_[SQL,Server教程]
查询数据库中重复记录的方法_[SQL Server教程]
应用技巧:动态网页中直接不让访问PHP程序文件_[PHP教程]
SQL语言快速入门之二_mssql学习_编程技术
Reading number is top 10 pictures
Li Zongrui hunting video screenshots2
photos of ashlynn brooke(ashlynn brooke的美图)
这才是真正的人体艺术2
China railway shunting skills competition
Born After 90 Beijing sports university campus flower photos3
壮丽的云彩1
Kim jong il's mistress, national beauty JinYuJi actor3
教你做读书笔记
Ashlynn Brooke photograph of a group1
2012 national geographic daily picture3
Download software ranking
Tram sex maniac 2 (H) rar bag5
Ashlynn Video4
Boxer's Top ten classic battle10
塘西风月痕
仙剑奇侠传98硬盘WINXP版
Tram sex maniac 2 (H) rar bag15
尖东毒玫瑰A
Boxer's Top ten classic battle2
Unix video tutorial18
卡丁车单机版
delv published in(发表于) 2014/1/6 9:02:47 Edit(编辑)
ASP.NET中用哪种方式表格化数据_[Asp.Net教程]

ASP.NET中用哪种方式表格化数据_[Asp.Net教程]

ASP.NET中用哪种方式表格化数据_[Asp.Net教程]

在开发ASP.NET站点项目中,经常用表格化的方式显示数据。最常用的可能就是DataGrid绑定DataSet数据的方式。在做过的软件项目中,有3种表格化数据的典型处理方式。

1、DataGrid绑定数据源。这种方式大家用的最多,但是DataGrid与ADO.NET完美的绑定方式,还是让人不爽。清一色的DataGrid风格很难适应不同项目的特殊风格,而且在DataGrid上做出的个性化处理也会非常的麻烦。


2、用XML(数据)+XSL(样式单)。大家能理解,DataSet绑定到DataGrid的实现机理不过如此。如图所示,实现这样的一个表格,开发人员可以尽情的设计XSL的风格样式。


3、直接将数据绘制到HTML。这个方式有些土,但有些时候却非常有效,先看实现的代码。下述代码是实现上图所示的表格。


1

2

3

4
5 cellSpacing="0" cellPadding="6" border="1" runat="server" bordercolor="#99cccc">
6

7

8

综合管理部人员职务


9

10

11

12
人员姓名

13
部门职务

14

15

16

17

18


直接用ASP.NET WebControls的Add方法,将Label添加到HTML的Cell中。


1public class WebForm2 : System.Web.UI.Page
2 {
3
4 struct PersonRole
5 {
6 public string name;
7 public string role;
8 }
9
10 protected System.Web.UI.HtmlControls.HtmlTable tblContainer;
11 public string strAuditItemID = "A899B637-AC47-42EB-9B61-A61C9C880DDC";
12 private void Page_Load(object sender, System.EventArgs e)
13 {
14 // 在此处放置用户代码以初始化页面
15 if(Request.QueryString["AuditItemID"] != null)
16 {
17 strAuditItemID = Request.QueryString["AuditItemID"].ToString();
18 }
19
20 GetTeamMember(strAuditItemID);
21 }
22
23 Web 窗体设计器生成的代码#region Web 窗体设计器生成的代码
24 override protected void OnInit(EventArgs e)
25 {
26 //
27 // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
28 //
29 InitializeComponent();
30 base.OnInit(e);
31 }
32
33 /**////


34 /// 设计器支持所需的方法 - 不要使用代码编辑器修改
35 /// 此方法的内容。
36 ///

37 private void InitializeComponent()
38 {
39 this.Load += new System.EventHandler(this.Page_Load);
40
41 }
42 #endregion
43
44 private void GetTeamMember(string AuditItemID)
45 {
46 string strMaster, strTeamLeader, strPM;
47 ArrayList al = GetTeamMemberName(AuditItemID, out strMaster, out strTeamLeader, out strPM);
48
49 foreach(PersonRole pr in al)
50 {
51 HtmlTableCell cell=new HtmlTableCell();
52 cell.Align = "Center";
53 Label lbl = new Label();
54 lbl.Text = pr.name;
55 lbl.Font.Size = 9;
56
57 cell.Controls.Add(lbl);
58 HtmlTableRow row=new HtmlTableRow();
59 row.Cells.Add(cell);
60
61 HtmlTableCell cellRole = new HtmlTableCell();
62 cellRole.Align = "Center";
63 Label lblRole = new Label();
64 lblRole.Text = pr.role;
65 lblRole.Font.Size = 9;
66
67 cellRole.Controls.Add(lblRole);
68 row.Cells.Add(cellRole);
69
70 tblContainer.Rows.Add(row);
71 }
72 }
73
74 private ArrayList GetTeamMemberName(string AuditItemID, out string strMasterName, out string strTeamLeader,out string strPM)
75 {
76 ArrayList al = new ArrayList();
77 strMasterName = "无";
78 strTeamLeader = "无";
79 strPM = "无";
80
81 PersonRole pr;
82 pr.name = "张三";
83 pr.role = "总经理";
84 al.Add(pr);
85
86 pr.name = "李四";
87 pr.role = "副总经理";
88 al.Add(pr);
89
90 pr.name = "王五";
91 pr.role = "科员";
92 al.Add(pr);
93
94 pr.name = "赵六";
95 pr.role = "科员";
96 al.Add(pr);
97
98 return al;
99 }
100 }


在绘制页面的时候,用哪种方式应该是仁者见仁、智者见智。在站点开发中,这3种方式都有典型的应用,特别是第三种,我发现在解决部分页面处理的性能问题中应用的非常有效。况且可以自动化的Layout页面控件,个性化处理比DataGrid中重写Render更加容易。


来源:AspCool





添加到del.icio.us 添加到新浪ViVi 添加到百度搜藏 添加到POCO网摘 添加到天天网摘365Key 添加到和讯网摘 添加到天极网摘 添加到黑米书签 添加到QQ书签 添加到雅虎收藏 添加到奇客发现 diigo it 添加到饭否 添加到飞豆订阅 添加到抓虾收藏 添加到鲜果订阅 digg it 貼到funP 添加到有道阅读 Live Favorites 添加到Newsvine 打印本页 用Email发送本页 在Facebook上分享


Disclaimer Privacy Policy About us Site Map

If you have any requirements, please contact webmaster。(如果有什么要求,请联系站长)
Copyright ©2011-
uuhomepage.com, Inc. All rights reserved.