首页 新闻 会员 周边 捐助

repeeater怎么绑定一个表的汇总?

0
悬赏园豆:20 [已解决问题] 解决于 2013-08-12 15:33

比如说 一张表里有2000条数据,repeater绑定的时候总条数那一列就显示40,然后还有求平均数的,就显示算出的结果。不知道用repeater怎么算。绑定出来只显示汇总的那一条数据的。

camille繁花的主页 camille繁花 | 初学一级 | 园豆:16
提问于:2013-08-12 10:18
< >
分享
最佳答案
0

通过 Repeater1.Controls.Add(..) 可以动态向Repeart中添加要显示的内容

收获园豆:20
dudu | 高人七级 |园豆:30939 | 2013-08-12 11:04

@camille繁花: 你的需求是什么?难道就是显示一条汇总数据?

dudu | 园豆:30939 (高人七级) | 2013-08-12 11:12

@camille繁花: 

这个可能不需要用Repeater

dudu | 园豆:30939 (高人七级) | 2013-08-12 11:29

@camille繁花: 

看到图片了,这个没有必要用Repeater,实在要用也可以。

稍等,我写一下示例代码

dudu | 园豆:30939 (高人七级) | 2013-08-12 11:36

@camille繁花: 

参考代码:

.aspx部分

<asp:Repeater ID="Repeater1" runat="server">
    <HeaderTemplate>
        <table>
            <tr><td>标题1</td><td>标题2</td><td>标题3</td><td>标题4</td><td>标题5</td></tr>
            <tr>
    </HeaderTemplate>
    <ItemTemplate>
        <td><%#Container.DataItem %></td>
    </ItemTemplate>
    <FooterTemplate>
        </tr>
        </table>
    </FooterTemplate>
</asp:Repeater>

.aspx.cs部分

protected void Page_Load(object sender, EventArgs e)
{
    int[] sumData = new int[] { 1, 2, 3, 4, 5 };
    Repeater1.DataSource = sumData;
    Repeater1.DataBind();
}
dudu | 园豆:30939 (高人七级) | 2013-08-12 12:09
其他回答(2)
0

---------------------------------------------------前台 -----------------------------------------

 <ItemTemplate>
                <tr>
                    <td><%# Eval("S_Month")%>日</td>
                     <td><%# Eval("S_IP")%></td>
                    <td><%# GetPercentage(Eval("S_IP").ToString(),Session["zongtemp"].ToString())%>%</td>
                    <td><%# Eval("S_View")%></td>                   
                    <td><%# GetPercentage(Eval("S_View").ToString(),Session["temp"].ToString())%>%</td>
                 </tr> 
            </ItemTemplate>

GetPercentage()主要是这个方法

---------------------------------------------------前台 -----------------------------------------

 

---------------------------------------------------后台-----------------------------------------

 /// <summary>
        /// 获取百分比
        /// </summary>
        /// <returns></returns>
        public string GetPercentage(string today, string total)
        {
            //总的条数
            float zong = Convert.ToInt64(total);
            float C_today = Convert.ToInt64(today);
            float percentage = (C_today / zong) * 100;
            //保留一位小数
            double percentage1 = Math.Round(percentage, 1);
            return percentage1.ToString();
        }

 

---------------------------------------------------后台-----------------------------------------

he彼岸 | 园豆:218 (菜鸟二级) | 2013-08-12 10:49

不是很明白。我eval里绑定的应该是什么?传到后台去的参数不是应该是我绑定的那个么?方法里面怎么才能只显示我算出来的不显示表里面的数据?

支持(0) 反对(0) camille繁花 | 园豆:16 (初学一级) | 2013-08-12 11:12

@camille繁花: Eval里绑定的是你要传入的数据撒,这个方法还回的是一个string 不用改变什么,你要自己去试一下就明白了,

支持(0) 反对(0) he彼岸 | 园豆:218 (菜鸟二级) | 2013-08-12 11:31
0

1、如果合计结果是增加列,那么在ItemTemplate中多配置一列即可;

2、如果合计结果是一行,那么就在FooterTemplate中配置一行即可;

幻天芒 | 园豆:37205 (高人七级) | 2013-08-12 12:51
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册