新建一個頁面parentDatagrid.aspx
以下是html
<%@ Import namespace="System.Data"%>
<%@ Page Language="vb" AutoEventWireup="false" Codebehind="parentDatagrid.aspx.vb" Inherits="reports.parentDatagrid"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<title>parentDatagrid</title>
<meta content="Microsoft Visual Studio .NET 7.1" name="GENERATOR">
<meta content="Visual Basic .NET 7.1" name="CODE_LANGUAGE">
<meta content="JavaScript" name="vs_defaultClientScript">
<meta content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema">
</HEAD>
<body MS_POSITIONING="GridLayout">
<form id="Form1" method="post" runat="server">
<table cellSpacing="0" cellPadding="0" width="900" align="center" border="0">
<tr>
<td align="center"><asp:label id="Label1" runat="server" Font-Names="新細明體" Font-Size="20pt">設計工程圖檔傳輸系統報表</asp:label></td>
</tr>
<tr>
<td>
<hr width="100%" color="black">
</td>
</tr>
<tr>
<td>
<table borderColor="#0099ff" cellSpacing="0" cellPadding="0" width="100%" border="1">
<tr bgColor="paleturquoise">
<td width="15%"><b><asp:label id="Label2" runat="server">客戶/機種</asp:label></b></td>
<td width="25%"><b><asp:label id="Label3" runat="server">圖檔路徑</asp:label></b></td>
<td width="8%"><b><asp:label id="Label4" runat="server">申請人</asp:label></b></td>
<td width="22%"><b><asp:label id="Label5" runat="server">申請時間</asp:label></b></td>
<td width="8%"><b><asp:label id="Label6" runat="server">傳輸人</asp:label></b></td>
<td width="22%"><b><asp:label id="Label7" runat="server">傳輸時間</asp:label></b></td>
</tr>
</table>
</td>
</tr>
<tr>
<td><asp:datagrid id="DataGrid1" runat="server" BorderColor="#00CCCC" ShowHeader="False" Width="100%"
CellPadding="0" AutoGenerateColumns="False" BorderWidth="1px">
<Columns>
<asp:TemplateColumn>
<ItemTemplate>
<TABLE cellSpacing="0" cellPadding="0" width="100%" border="0">
<TR>
<TD bgColor="paleturquoise">
<table cellpadding="0" cellspacing="0" border="0" bordercolor="#0099FF" width="100%">
<tr>
<td width="15%">
<%# DataBinder.Eval(Container.DataItem, "design_customer") %>
</td>
<td width="25%">
<%# DataBinder.Eval(Container.DataItem, "design_drawingpath") %>
</td>
<td width="8%">
<%# DataBinder.Eval(Container.DataItem, "design_proposer") %>
</td>
<td width="22%">
<%# DataBinder.Eval(Container.DataItem, "design_propose_time") %>
</td>
<td width="8%">
<%# DataBinder.Eval(Container.DataItem, "design_transmit_affirm_person") %>
</td>
<td width="22%">
<%# DataBinder.Eval(Container.DataItem, "design_transmit_affirm_time") %>
</td>
</tr>
</table>
</TD>
</TR>
<TR>
<TD align="right">
<table cellpadding="0" cellspacing="0" border="0" align="right" width="800">
<tr>
<td>
<asp:DataGrid id=DataGrid2 runat="server" Width=100% AutoGenerateColumns="False" BorderColor="#33FF33" DataKeyField="design_columnID" DataSource='<%# Ctype(Container.DataItem,DataRowView).CreateChildView("OrderRelation") %>'>
<HeaderStyle Font-Bold="false" ForeColor="#CC0066" BackColor="#FFCCFF"></HeaderStyle>
<Columns>
<asp:TemplateColumn HeaderText="模號">
<HeaderStyle Width="200px"></HeaderStyle>
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem, "design_moldID") %>
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="圖檔名稱">
<HeaderStyle Width="400px"></HeaderStyle>
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem, "design_drawingname") %>
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="備註">
<HeaderStyle Width="200px"></HeaderStyle>
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem, "design_remark") %>
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
</asp:DataGrid>
</td>
</tr>
</table>
</TD>
</TR>
</TABLE>
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
</asp:datagrid>
</td>
</tr>
<tr>
<td align="right"><asp:Label id="pagecount" runat="server" CssClass="datagridstyle1"></asp:Label>
<asp:Label id="lblcurpage" runat="server" CssClass="datagridstyle1"></asp:Label>
<asp:HyperLink id="lnkprev" runat="server" CssClass="datagridstyle1">上一頁</asp:HyperLink>
<asp:HyperLink id="lnknext" runat="server" CssClass="datagridstyle1">下一頁</asp:HyperLink>
</td>
</tr>
</table>
</form>
</body>
</HTML>
下面是.aspx.vb
sub page_load()
Dim str, sql As String
Dim conn As SqlConnection
Dim da As SqlDataAdapter
Dim ds As New DataSet
str = ConfigurationSettings.AppSettings("connstr")
sql = "select * from insertMR order by design_sortID desc;select * from insertMR_sub"
conn = New SqlConnection(str)
da = New SqlDataAdapter(sql, conn)
da.Fill(ds, "insertMR")
ds.Tables(0).TableName = "insertMR"
ds.Tables(1).TableName = "insertMR_sub"
Dim Parent As DataColumn = ds.Tables("insertMR").Columns("design_columnID")
Dim Child As DataColumn = ds.Tables("insertMR_sub").Columns("design_columnID")
Dim OrderRelation As DataRelation = New DataRelation("OrderRelation", Parent, Child, False)
ds.Relations.Add(OrderRelation)
'*****************
Dim objpage As New PagedDataSource
objpage.DataSource = ds.Tables("insertMR").DefaultView
objpage.AllowPaging = True
objpage.PageSize = 10
Dim curpage As Integer
If (Request.QueryString("page") <> "") Then
curpage = Convert.ToInt32(Request.QueryString("page"))
Else
curpage = 1
End If
objpage.CurrentPageIndex = curpage - 1
pagecount.Text = "總共" + "<font color=red>" + objpage.PageCount.ToString + "</font>" + "頁"
lblcurpage.Text = "當前頁:第<font color=red>" + curpage.ToString + "</font>頁"
If Not objpage.IsFirstPage Then
lnkprev.NavigateUrl = Request.CurrentExecutionFilePath + "?page=" + Convert.ToString(curpage - 1)
End If
If Not objpage.IsLastPage Then
lnknext.NavigateUrl = Request.CurrentExecutionFilePath + "?page=" + Convert.ToString(curpage + 1)
End If
DataGrid1.DataSource = objpage
DataGrid1.DataBind()
'************************************
datagrid1.DataSource=ds.tables("insertMR").DefalutView
dataBind()
end sub
實現的功能是主從表可以分頁顯示,數據庫我用的是我自己的數據庫,
將*******中的文字換成下面的紅色的代碼,則不會分頁顯示