加载中…
个人资料
芝麻開花
芝麻開花
  • 博客等级:
  • 博客积分:0
  • 博客访问:0
  • 关注人气:0
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

动态生成Repeater

(2010-10-27 12:35:20)
标签:

repeater

数据库

动态

it

分类: ASP.NET[C#]
在ASPX中,只要写上下面语句即可:
<asp:PlaceHolder id="ph1" runat="server">
</asp:PlaceHolder>

在C#中,动态生成Repeater如下:
private void ShowRepeater(DataTable dtTable)
    {
        Repeater rep1 = new Repeater();
        rep1.DataSource = dtTable;
        rep1.DataBind();

        foreach (RepeaterItem pi in rep1.Items)
        {
            if (pi.ItemIndex == 0)
            {
                RepeaterItem headerItem = new RepeaterItem(pi.ItemIndex, ListItemType.Header);
                pi.Controls.Add(new LiteralControl("<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\"><thead><tr>")); //Repeater的HeaderItem
                for (int i = 0; i < dtTable.Columns.Count; i++)
                              
                     pi.Controls.Add(new LiteralControl("<td>" + dtTable.Columns[i].ColumnName + "</td>"));
               }
                pi.Controls.Add(new LiteralControl("</tr></thead>"));
            }

            //ContentItem
            pi.Controls.Add(new LiteralControl("<tr>"));
            RepeaterItem contentItem = new RepeaterItem(pi.ItemIndex, ListItemType.Item);
            for (int j = 0; j < dtTable.Columns.Count; j++)
            {
                pi.Controls.Add(new LiteralControl("<td  style=\"padding-left:5px\">" + dtTable.Rows[pi.ItemIndex][dtTable.Columns[j].ColumnName] + "</td>"));
            }
            pi.Controls.Add(new LiteralControl("</tr>"));
        }
        ph1.Controls.Add(rep1);
    }
这样就会在页面上显示对应的数据表数据了。

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有