如何创建水平转发器?如何将按钮视为图标?

时间:2012-10-28 16:06:04

标签: asp.net repeater

我正在使用转发器控件来显示某些表的数据。转发器中的每一行包含两列:一个图标(红色/黄色/绿色圆圈)和一个解释。

我必须达到目标,第一个目标是创建相同的转发器,现在我需要它是水平的。第二个目标是我需要每个图标(红色/绿色/黄色圆圈)作为一个按钮,这样当我按下其中一个图标时,就会发生一个事件(无关紧要,比如Response.Write(“绿色是压“);

你能帮助我吗?

1 个答案:

答案 0 :(得分:2)

要使其水平,您可以将li列表用作inline,这是一个css技巧。完整代码:

<head runat="server">
    <style type="text/css">
    #navlist li
    {
        display: inline;
        list-style-type: none;
        padding-right: 20px;
    }   
    </style>
</head>
<body>
    <form id="form1" runat="server">
    <div id="navcontainer">
    <ul id="navlist">
    <asp:Repeater ID="Repeater1" runat="server">
        <ItemTemplate>
            <li>Some text and my id: <%# GetID(Container.DataItem) %></li>
        </ItemTemplate>
    </asp:Repeater>
    </ul>
    </div>
    </form>
</body>
</html>

以及代码背后:

public partial class Dokimes_StackOverFlow_HorizontialRepeater : System.Web.UI.Page
{
    List<int> oMainIds = new List<int>();

    protected void Page_Load(object sender, EventArgs e)
    {
        for (int i = 0; i < 10; i++)
        {
            oMainIds.Add(i);
        }

        Repeater1.DataSource = oMainIds;
        Repeater1.DataBind();
    }

    public int GetID(object oItem)
    {
        return (int)oItem;
    }
}

你有一个像:

的渲染
  

一些文字和我的身份证:0有些文字和我的身份:1有些文字和我的身份:2   一些文字和我的身份:3有些文字和我的身份:4有些文字和我的身份:5   一些文字和我的身份:6有些文字和我的身份:7有些文字和我的身份:8   一些文字和我的身份:9