您的位置:首页 > Web前端 > CSS

repeater 完全取代gridveiw 指定类型绑定 分页,隔行样式,css,合并单元格

2009-09-09 17:14 399 查看
<%@ Register Assembly="AspNetPager" Namespace="Wuqi.Webdiyer" TagPrefix="webdiyer" %>
<asp:Repeater ID="RepReport" runat="server" OnItemDataBound="RepReport_ItemDataBound"
OnItemCreated="RepReport_ItemCreated">
<HeaderTemplate>
<table width="100%" border="1" cellspacing="0" cellpadding="0" class="GridViewStyle">
<tr class="HeaderStyle">
<td>
序号</td>
<td>
工号</td>

</tr>
</HeaderTemplate>
<ItemTemplate>
<tr class="<%#RptItemStyle%>">
<td>
<asp:Label ID="lblIndex" runat="server"></asp:Label></td>
<td>
<%#Info["WorkNo"] %>
</td>
</tr>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
<table style="margin: 0 auto;">
<tr>
<td>
<div style="float: left; margin-left: 50px;">
总共<asp:Label ID="lblAllCount" runat="server" Text="0" ForeColor="Red"></asp:Label>个记录</div>
</td>
<td>
<div class="pagerShowDiv">
<webdiyer:AspNetPager ID="AspNetPager" CssClass="AspNetPageStyle" runat="server"
AlwaysShow="True" PageSize="1" OnPageChanging="AspNetPager1_PageChanging" FirstPageText="首页"
LastPageText="尾页" NextPageText="下一页" PagingButtonSpacing="" PrevPageText="上一页"
ScrollBars="Auto" ShowPageIndexBox="Never">
</webdiyer:AspNetPager>
</div>
</td>
</tr>
</table>
后台
protected DataRowView Info = null; //用于指字类型进行数据绑定
public string RptItemStyle; //设置隔行样式
protected void AspNetPager1_PageChanging(object src, Wuqi.Webdiyer.PageChangingEventArgs e)
{
AspNetPager.CurrentPageIndex = e.NewPageIndex;
SearchData();
}
protected void RepReport_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemIndex % 2 == 0) //设置隔行样式
{
RptItemStyle = "RowStyle";
}
else
{
RptItemStyle = "AltRowStyle";
}
}
protected void RepReport_ItemCreated(object sender, RepeaterItemEventArgs e)
{
Info = e.Item.DataItem as DataRowView;//用于指字类型进行数据绑定
}

protected void RepReport_PreRender(object sender, EventArgs e)
{
//合并 单元格
if (RepReport.Items.Count > 0)
{
double dbeverageScort = 0;

if (RepReport.Items.Count > 1)
{
for (int intIndex = 0; intIndex < RepReport.Items.Count; intIndex++)
{
Label lblScort = (Label)RepReport.Items[intIndex].FindControl("lblScort");
dbeverageScort += double.Parse(lblScort.Text);
}
HtmlTableCell oCell_previous = RepReport.Items[0].FindControl("tdEvergeName") as HtmlTableCell;
oCell_previous.RowSpan = RepReport.Items.Count;
oCell_previous.InnerText = (dbeverageScort / RepReport.Items.Count).ToString("F2");
for (int intIndex = 1; intIndex < RepReport.Items.Count; intIndex++)
{
//删除后面几行的最后一个单元格
HtmlTableCell oCell = RepReport.Items[intIndex].FindControl("tdEvergeName") as HtmlTableCell;
oCell.Visible = false;
}

}
else
{
Label lblScort = (Label)RepReport.Items[0].FindControl("lblScort");
dbeverageScort = double.Parse(lblScort.Text); ;
HtmlTableCell oCell_previous = RepReport.Items[0].FindControl("tdEvergeName") as HtmlTableCell;
oCell_previous.InnerText = dbeverageScort.ToString("F2");
}
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: