社区
C#
帖子详情
在CrystalReports中,怎么在同一页上显示多条记录
newpant
2003-09-02 02:15:36
比如我有30条记录,我想每页显示5条,共有6页 :(
一定要帮帮我
...全文
109
7
打赏
收藏
在CrystalReports中,怎么在同一页上显示多条记录
比如我有30条记录,我想每页显示5条,共有6页 :( 一定要帮帮我
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
newpant
2003-09-04
打赏
举报
回复
大家帮帮忙...
newpant
2003-09-02
打赏
举报
回复
还是不太清楚,能否说得再详细些 :D thx
xjliang007
2003-09-02
打赏
举报
回复
其實很簡單,把要顯示的字段放在細目裡就可以一頁顯示多條記錄了,至於你說五條,可以通過控制行距和頁首頁尾高度等來控制了
XiaoCsharp
2003-09-02
打赏
举报
回复
直接指定各部分的高度,好象只有这个方法
xjliang007
2003-09-02
打赏
举报
回复
樓上的回答好象文不對題了。
XiaoCsharp
2003-09-02
打赏
举报
回复
CrystalReports,水晶表伙计,不是DataGrid
lemong
2003-09-02
打赏
举报
回复
分页使您可以按页段显示 DataGrid 控件的内容。页上的项数由 PageSize 属性确定。如果没有为 PageSize 属性指定任何值,则 DataGrid 将在一页上显示 10 项。
通常,在每次 DataGrid 控件移到不同页时都将加载包含 DataGrid 控件中每一行的数据源。当数据源很大时这会占用大量资源。自定义分页使您可以只加载显示单页所需的数据段。
若要启用自定义分页,请将 AllowPaging 和 AllowCustomPaging 属性都设置为 true。接下来,提供用来处理 PageIndexChanged 事件的代码。
PageIndexChanged 事件处理程序的典型逻辑是首先将 CurrentPageIndex 属性设置为您要显示的页的索引。
注意 事件处理程序接收 DataGridPageChangedEventArgs 对象作为参数。可以使用该参数的 NewPageIndex 属性来确定用户从 DataGrid 控件的页选择元素中所选择的页的索引。
接下来,创建包含要在单页显示的数据的数据源,然后使用 DataBind 方法将数据绑定到 DataGrid 控件。
注意 因为只加载一个数据段,所以您必须将 VirtualItemCount 属性设置为 DataGrid 控件中各项的总数。这使得该控件可以确定显示 DataGrid 控件中每一项所需的总页数。只要确定了 DataGrid 控件中的总项数,通常就可以用编程的方式设置此属性。
在通过将 AllowCustomPaging 属性设置为 false 来启用分页后,DataGrid 控件假设数据源包含所有要显示的项。DataGrid 控件根据 CurrentPageIndex 属性指定的页索引以及 PageSize 属性指定的页上项的数目来计算显示的页上各项的索引。
当 AllowCustomPaging 属性被设置为 true 时,DataGrid 控件假设数据源只包含由 VirtualItemCount 属性确定的项。所有项(项数最多可达由 PageSize 属性指定的数目)都将显示出来。
示例
下面的示例展示如何使用 AllowCustomPaging 属性来启用自定义分页。
[C#]
<%@ Import Namespace="System.Data" %>
<html>
<script language="C#" runat="server">
int start_index;
ICollection CreateDataSource()
{
DataTable dt = new DataTable();
DataRow dr;
dt.Columns.Add(new DataColumn("IntegerValue", typeof(Int32)));
dt.Columns.Add(new DataColumn("StringValue", typeof(string)));
dt.Columns.Add(new DataColumn("CurrencyValue", typeof(double)));
for (int i = start_index; i < start_index + ItemsGrid.PageSize; i++)
{
dr = dt.NewRow();
dr[0] = i;
dr[1] = "Item " + i.ToString();
dr[2] = 1.23 * (i+1);
dt.Rows.Add(dr);
}
DataView dv = new DataView(dt);
return dv;
}
void Page_Load(Object sender, EventArgs e)
{
if (CheckBox1.Checked)
ItemsGrid.PagerStyle.Mode=PagerMode.NumericPages;
else
ItemsGrid.PagerStyle.Mode=PagerMode.NextPrev;
if (!IsPostBack)
{
start_index = 0;
ItemsGrid.VirtualItemCount=100;
}
BindGrid();
}
void Grid_Change(Object sender, DataGridPageChangedEventArgs e)
{
ItemsGrid.CurrentPageIndex = e.NewPageIndex;
start_index = ItemsGrid.CurrentPageIndex * ItemsGrid.PageSize;
BindGrid();
}
void BindGrid()
{
ItemsGrid.DataSource=CreateDataSource();
ItemsGrid.DataBind();
}
</script>
<body>
<form runat=server>
<h3>DataGrid Custom Paging Example</h3>
<asp:DataGrid id="ItemsGrid" runat="server"
BorderColor="black"
BorderWidth="1"
CellPadding="3"
AllowPaging="true"
AllowCustomPaging="true"
AutoGenerateColumns="false"
OnPageIndexChanged="Grid_Change">
<PagerStyle NextPageText="Forward"
PrevPageText="Back"
Position="Bottom"
PageButtonCount="5"
BackColor="#00aaaa">
</PagerStyle>
<AlternatingItemStyle BackColor="yellow">
</AlternatingItemStyle>
<HeaderStyle BackColor="#00aaaa">
</HeaderStyle>
<Columns>
<asp:BoundColumn HeaderText="Number"
DataField="IntegerValue"/>
<asp:BoundColumn
HeaderText="Item"
DataField="StringValue"/>
<asp:BoundColumn
HeaderText="Price"
DataField="CurrencyValue"
DataFormatString="{0:c}">
<ItemStyle HorizontalAlign="right">
</ItemStyle>
</asp:BoundColumn>
</Columns>
</asp:DataGrid>
<br/>
<asp:CheckBox id="CheckBox1"
Text = "Show page navigation"
AutoPostBack="true"
runat="server"/>
</form>
</body>
</html>
要求
平台: Windows 2000, Windows XP Professional, Windows .NET Server family
水晶报表的分页设置,如何设置水晶报表的分页功能
数据通常会被放置在“详细资料”节(Details Section),这是报表
中
显示
单条
记录
的部分。为了设置分页,你需要对这个节进行操作。 1. 右键点击“详细资料”节,选择“节专家”选项。这将打开一个对话框,展示了与该...
C# 设置每页只能打印20条
记录
(报表打印)
在C#
中
,我们可以使用各种库和框架来创建和管理报表,例如
Crystal
Re
ports
、DevExpress、WinForms
中
的DataGridView控件等。 要实现每页打印20条
记录
,我们需要进行以下步骤: 1. 数据获取:从数据库或其他数据源...
C#设置报表打印_设置每行打印30条
记录
.rar
在报表打印过程
中
,会涉及到多个事件,如PrintPage事件,它在每
一页
开始打印时触发,允许我们在事件处理程序
中
绘制报表内容。我们需在该事件
中
计算当前位置并绘制数据。 6. **页面设置** 每个报表可能需要特定的...
C#原生报表操作--设置每页打印30行实例源码.rar
在C#
中
,可以使用多种库和框架来创建报表,如
Crystal
Re
ports
、DevExpress、Syncfusion等,也可以自定义开发。在这个实例
中
,我们可能涉及到的是自定义报表的实现。 设置每页打印30行,意味着我们需要处理以下几个...
第10章 报表设计.ppt
详细资料节
中
的对象对应每条
记录
;报表页脚在报表结束时
显示
,常用于总结信息;页脚则在每页底部
显示
;组页眉和组页脚则分别在每个数据分组的开始和结束时出现,用于分组统计。 10.1.4 ADO.NET数据集可以作为报表的...
C#
111,093
社区成员
642,554
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章