1

たとえば、私のデータベースには96行あり、行を4つずつグループ化する必要があります(結果のテーブルには8行の3列があります)。元

ここに画像の説明を入力

4

1 に答える 1

2

DataList 以外のコントロールを使用できれば、はるかに簡単に処理できる可能性があります。たとえば、次のTableようなサーバー コントロールを使用できます。

<asp:Table ID="tblGrouped" runat="server"></asp:Table>

そして、コードで:

protected void LoadData() {
    var items = MyDataSource.GetMyItems();

    TableRow tr = null;
    TableCell tc = null;

    for (int i = 0; i < items.Count; i++) {
        if (i % 12 == 0) {
            tr = new TableRow();
            tc = new TableCell();
            tc.Text = items[i].MyProperty;
            tr.Cells.Add(tc);
            tblGrouped.Rows.Add(tr);
        } else if (i % 4 == 0) {
            tc = new TableCell();
            tc.Text = items[i].MyProperty;
            tr.Cells.Add(tc);
        } else {
            tc.Text += "<br />" + items[i].MyProperty;
        }
    }
}
于 2012-06-30T16:15:18.473 に答える