按钮动态表

时间:2015-06-29 09:43:42

标签: c# asp.net

我需要创建一个动态填充的Button或ImageButton控件的二维数组。

我希望能够连续设置按钮数量。

该表将从DataSource控件或后面的代码接收数据,并使用具有相应值的Button控件填充每个单元格。

例如,如果我将列数设置为3:

Value1 Value2 Value3
Value4 Value5 Value6
Value7 Value8

哪种ASP.NET控件最适合实现它?
谢谢。

2 个答案:

答案 0 :(得分:3)

您可以使用Repeater Control来完成。

.aspx Page

<div style="width:269px">
    <asp:Repeater ID="Repeater1" runat="server">
        <ItemTemplate>
            <asp:Button runat="server" ID="btn" Text='<%# Eval("Value") %>' />
        </ItemTemplate>
    </asp:Repeater>
</div>

在这里,您可以根据需要设置div的width

.cs页面

DataTable dt = new DataTable();
dt.Columns.Add("Value");
dt.Rows.Add("Value1");
dt.Rows.Add("Value2");
dt.Rows.Add("Value3");
dt.Rows.Add("Value4");
dt.Rows.Add("Value5");
dt.Rows.Add("Value6");
dt.Rows.Add("Value7");
dt.Rows.Add("Value8");
Repeater1.DataSource = dt;
Repeater1.DataBind();

输出将如下所示

enter image description here

答案 1 :(得分:2)

您可以使用DataList。 RepeatColumns将帮助您设置号码。列。

<asp:DataList ID="dlButtons" runat="server" RepeatDirection="Horizontal" RepeatColumns="3">
    <ItemTemplate>
        <asp:Button runat="server" ID="button" Text='Your Text' />
    </ItemTemplate>  
</asp:DataList>