[入门]以初学者来看,ASP.NET的GridView可以学到什么?
http://www.dotblogs.com.tw/mis2000lab/archive/2008/07/15/4501.aspx
以前在ASP.NET 1.1版,是DataGrid。没想到改朝换代以后,ASP.NET 2.0起(~3.5),变成GridView。
而且搭配了DataSource控件(SqlDataSource或AccessDataSource),的确比以前强悍很多。
GridView也是目前大多数ASP.NET书籍第一介绍的「大型、全能控件」,
GridView能玩到的功能很多,由浅入深,有各种玩法。
重点不是在「强调GridView的英明神武」,而是
在GridView的学习历程中,我们学到的东西,都可以延续到其它控件来使用。
这才是书籍作者偏好 「优先推荐GridView」的理由吧。
以初学者为例,GridView的学习历程,可以包含:
第一,不写程序,完全靠设定(GridView + SqlDataSource)
这一个阶段,是要熟悉VS 2005/2008/2010的画面操作、GridView各种属性的了解。
能透过自动格式化,帮GridView变装。
透过SqlDataSource,连结数据库,并执行简单的T-SQL指令。
完成GridView的分页、排序、编辑、更新、取消等等命令字段(CommandField)。
第二,学习「样版(TemplateField)」。
样版这东西,自由度很高。而且其它控件也都有,学会了将来都能应用得上。
ListView / FormView / DetailsView都可以用到「样版」。
不过,样版会搭配「系结表达式」,这才是重点。如下所示:
<%# Bind("数据表的字段") %> 或是 <%#Eval("数据表的字段")%>
上面这两章,大多不需要自己写程序,所以我首度采用「大量的连续图片」,以图解的方式作步骤的说明。
(谜之声:那不是跟漫画一样,图比字多了?) YES!!! 漫画的确比大量的文字,要好吸收多了
第三,Master-Detail功能。
常见的系统,都免不了使用到Master-Detail功能。例如:
- 电子购物网站。在首页上面列出好多产品分类、或是产品列表(Master),点选某一个商品的超级链接之后,就会看见这个商品的售价、细部内容、规格(Detail)。下面这张图片,是撷取自 Pchome的在线购物网站。
- 媒体网站。首页有好多种文章分类,只出现「标题」与「摘要」(Master)。点选某一篇文章的超级链接之后,就会看见此文的所有内容(Detail)。
光靠GridView + SqlDataSource,就能玩出好几种花样。
如果搭配别的控件,那更是变化无穷。
这阶段的重点,在于 SqlDataSource这两个画面(如下)的设定上。
上面这两个设定步骤,学通了。大概Master-Detail的各种花样都玩得出来了。
我公布了书里的两小节,请看:
- [主细表]GridView+SqlDataSource,一行程序代码都不用写。本书9-1节内容公开
- [习题] [主细表]同一个网页里面,两个GridView作关联对应(不写程序,只靠SqlDataSource完成)
第四,手动写一些程序,了解GridView背后运作的原理。
GridView能自动产生分页、编辑、更新、取消等等功能,到底是怎么完成的?
其实很简单,甚至一两行程序就能搞定。
这阶段,透过自己写程序,了解不同的功能,会触发不同的GridView事件(Event)。
这些事件、命令字段(CommandField)或是CommandName一旦学会,
后续的ListView / FormView等等,不用重学一遍,玩玩就能上手。
第五,各种变化与进阶功能。
GridView大肠包小肠。
GridView合并标题字段。
GridView也能内建「数据新增(Insert)」功能?......了解后置程序代码里面, 各种事件的用法(难度高, 不过其它书都不提这些重点!)
......这里的变化就多了,但有些玩法也太深入。
学得会,算是赚到了。学不会,以后有空再回头补起来。
毕竟初学者,不要太贪心。循序渐进,慢慢地来。
下图是「GridView合并 "标题" 字段」。这功能以前发表过了,请看----GridView密技#2---GridView合并储存格
下图是「GridView大肠包小肠」。我用了 User Control(使用者控件),让程序少一点。
这功能以前发表过了,请参考--GridView密技#1---大肠包小肠
以下是出版的新书内容:本文范例已经收录在书本!
ASP.NET案例精编(清华大学出版社 / 作者MIS2000Lab)
http://www.china-pub.com/46063
2009/5/15上市
市场价 :¥59.80 RMB(人民幣)
....................................................................................................寄信给我 mis2000lab (at)雅虎.com.台湾 ........
ASP.NET案例精编(清华大学出版社 / 作者MIS2000Lab)
http://www.china-pub.com/46063
2009/5/15上市
市场价 :¥59.80 RMB(人民幣)