国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

十天學會ASP.net之第八天

2024-07-10 13:05:18
字體:
來源:轉載
供稿:網友
學習目的:初步掌握datagrid的使用

以前在asp中,我們顯示大批量數據經常使用循環讀取記錄集的方式,在表格中插入代碼來顯示,循環的是<tr>,如果是分頁還需要自己制作,如果排序更加復雜,在asp.net中就好了,一切工作都可以讓datagrid來做。

首先看一下datagrid的樣式方面的屬性
backimageurl="" 背景圖片
cellspacing="" 單元格間距
cellpadding="" 單元格填充
cssclass="" 使用的css樣式

datagrid可以自動用表中的字段名放在顯示的記錄的頭部來表示各個單元格所代表的意義,用showheader="true/false"來控制是不是顯示,在大多數情況下我們是不需要這個功能的,因為我們數據庫中的字段名大多是英文的,而我們想在頁面輸出的大多是中文名字。

下面看一下顯示數據庫內所有記錄,就幾行代碼:


<script runat="server" language="c#">
void page_load()
{
string strconnection="provider=microsoft.jet.oledb.4.0;data source=";
strconnection+=server.mappath("guestbook.mdb");
oledbconnection objconnection=new oledbconnection(strconnection);
oledbcommand objcommand1 = new oledbcommand("select * from guestbook",objconnection);
objconnection.open();
dgrdmain.datasource=objcommand1.executereader();//dgrdmain就是下面的datagrid的id
dgrdmain.databind();
objconnection.close();
}
</script>
<html>
<body>
<asp:datagrid
id="dgrdmain"
cellpadding="1"
showheader="true"
borderwidth="0"
runat="server"
/>
</body>
</html>

至于vb的版本,這次大家自己來試試吧:)

假設數據庫是三個字段:id,aa,bb
顯示的樣子就如下:


id aa bb
1 werwe rewrwe
2 werwe rewrwe



我們一定覺得這種顯示不滿意,我們有兩種顯示的方式(需要包括在<columns></columns>中間):

一、默認的列,我們可以選擇不輸出所有的字段還可以安排順序:
<asp:boundcolumn datafield="想要顯示的字段名">
比如說我們想按照bb,aa來輸出這個表,我們這么寫

<asp:datagrid
id="dgrdmain"
cellpadding="1"
showheader="true"
autogeneratecolumns="false"
borderwidth="0"
runat="server">
<columns>
<asp:boundcolumn datafield="bb"/>
<asp:boundcolumn datafield="bb"/>
</columns>
</asp:datagrid>

注意使用了autogeneratecolumns="false"以后datagrid就不會自動輸出所有字段了。

二、以模板列,我們可以定制每一個單元格的樣式:
<asp:templatecolumn>
<itemtemplate>
中間是一個表格,想怎么樣就怎么樣
</itemtemplate>
</asp:datagrid>
或許你們要說怎么在表格中輸出代碼那,可以使用<%# databinder.eval(container.dataitem,"字段名").tostring()%>
下面看一個例子,我們所要做的就是把aa,bb兩個字段放在一個單元格內顯示,就好像下面一樣:


1 werwe
rewrwe
2 werwe
rewrwe


我們這樣寫代碼:
<asp:datagrid
id="dgrdmain"
cellpadding="1"
showheader="false"
autogeneratecolumns="false"
borderwidth="0"
runat="server">
<columns>
<asp:boundcolumn datafield="ii"/> 首先使用默認的顯示方式顯示id
<asp:templatecolumn> 再使用模板來顯示后面一列(由aa,bb并列組成)
<itemtemplate>
<table border="0" cellspacing="0" cellpadding="0" width="100%">
<tr>
<td><%# container.dataitem("aa")%></td>
</tr>
<tr>
<td><%# container.dataitem("bb")%></td>
</tr>
</table>
</itemtemplate>
</asp:datagrid>
</columns>
</asp:datagrid>

今天就說到這里,明天我們來看一下datagrid的分頁顯示等功能
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 洛扎县| 甘泉县| 云阳县| 错那县| 屏山县| 班戈县| 增城市| 漠河县| 灌阳县| 林甸县| 东安县| 永春县| 乐陵市| 北辰区| 得荣县| 朝阳区| 巴南区| 辽宁省| 博客| 南安市| 嘉荫县| 行唐县| 南宫市| 保德县| 泾阳县| 广安市| 松溪县| 泰来县| 正定县| 汕尾市| 兴业县| 石台县| 大关县| 舞钢市| 寻甸| 乌拉特中旗| 广汉市| 二手房| 乌兰县| 乐业县| 虹口区|