因為是剛開始學asp.net,最主要的是因為工作的原因,現在還不使用asp.net來開發軟件,所以學習時間就相對少了一些,學起來也比較慢,再加上我這個人奇笨,所以就有了下面這篇文章。
捧著一本asp.net的書啃了半天,看到介紹DataGrid控件的時候,禁不住想做個小程序試試。書上給了兩個例子,一個是自動生成列的,另外一個是手動生成列的,我選擇手動生成列。代碼如下:
<%@ page language=vb runat=server debug=true%> <%@ import namespace="system"%> <%@ import namespace="system.data"%> <%@ import namespace="system.data.oledb"%> <%@ import namespace="system.data.sqlclient"%> <%@ import namespace="system.text"%> <%@ import namespace="system.IO"%> <%@ import namespace="system.web"%> <%@ import namespace="system.web.UI"%> <%@ import namespace="system.web.UI.Webcontrols"%>
<script language=vb runat=server>
sub page_load(byval sender as object,byval e as eventargs) dim conn as oledbconnection dim command as oledbdataadapter dim ds as new dataset
conn=new oledbconnection("Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=client;Data Source=vvv") command=new oledbdataadapter("select * from infoclient",conn) command.fill(ds,"infoclient")
datagrid1.datasource=ds.tables("infoclient").defaultview datagrid1.databind end sub </script> <html> <head> <title>客戶管理-客戶信息</title> </head> <body>
<asp:datagrid id=datagrid1 width=90% autogeneratecolumns=false backcolor=beige alternatingitemstyle-backcolor=cornsilk bordercolor=black showfooter=false cellpadding=3 cellspacing=0 font-name=arial font-size=8pt forecolor=black headerstyle-backcolor=burlywood headerstyle-font-bold=true runat="server" ></asp:datagrid>
</body> </html>
數據庫里面有數據,但是運行的時候什么也沒顯示,空白頁,請問哪里錯了?
搞了半天,最后才弄明白,當你選擇autogeneratecolumns=false,即手動生成列的時候,一定要用columns集合,boundcolumns等控件來將你的列顯示出來,如果既選擇了autogeneratecolumns=false,又不用columns集合,那怎么叫手動生成列呢?
關于asp.net中使用DataGrid控件,我還有很多問題,搞明白之后我想都把它作為文章寫出來,也算給自己積累點小經驗,也給跟我一樣暈糊的小菜們提供點知識點。
|