带有选框和标签标签的asp.net转发器

时间:2013-05-30 16:49:50

标签: asp.net

我正在开发一个asp项目,我想逐个将数据库(Sql server)中的值显示到marquee标签中。经过一番搜索,我可以在下面编写代码。

 <asp:Repeater id="newsrepeater" runat="server">   
<ItemTemplate>
<asp:Label ID="labelnews" text='<%# Container.DataItem %>' runat="server">             
</asp:Label>
</ItemTemplate>
</asp:Repeater>

代码有效,唯一的问题是列表中的值全部显示在一起。例如,如果有news1和news2,则显示news1news2,同时我想一个接一个地显示news1和news2。他们会重复。任何建议请。

1 个答案:

答案 0 :(得分:0)

例如:

<div id="Hot_News" >
            <marquee behavior="scroll" direction="up" scrollamount="2" behavior="alternate" onmouseover="this.setAttribute('scrollamount', 0, 0);" onmouseout="this.setAttribute('scrollamount', 6, 0);">
            <asp:Repeater ID="rep_marq" runat="server" >                    
                <ItemTemplate>
                    <ul class="marquee">
                        <li class="marquee_li">
                            <a href='<%# Eval("NewsID","../Public_Pages/ShowNewsPage.aspx?NID={0}") %>'>
                                <asp:Label ID="Label3" runat="server" Text='<%#Eval("NewsTitr") %>'></asp:Label>
                            </a>
                        </li>
                    </ul>
                </ItemTemplate>
            </asp:Repeater>
            </marquee>                
        </div>

并在代码背后:

public void fillrepeter()
{
    try
    {
        var db = new DataClassesDataContext();
        var fill = (db.TblNews.Select(p => p)).Take(5).ToList();
        if (fill != null)
        {
            rep_marq.DataSource = fill;
            rep_marq.DataBind();
        }
    }
    catch (Exception)
    {

        throw;
    }
}