1

を使用していDataListます。はItemTemplate有界です。を追加しHeaderTemplate、各 FormLoad に追加する動的ラベルを含めるために必要なテーブル内に配置します。ヘッダーを制限したくありません。

このテーブルにアクセスしようとしていますが、このテーブルが存在しないか、アクセスできないことが示されています。

if (this.TableCategories.Rows.Count == 0 || 
    this.TableCategories.Rows[this.TableCategories.Rows.Count - 1].Cells.Count == 5)
{
    TableRow newRow = new TableRow();
    this.TableCategories.Rows.Add(newRow);
}


<asp:DataList ID="DataListProducts" runat="server" RepeatDirection="Horizontal" 
  OnItemCommand="DataListProducts_ItemCommand" Height="200px" Width="100%" 
  BackColor="White" BorderColor="#999999" BorderStyle="None" BorderWidth="1px" 
  CellPadding="0" GridLines="Vertical" RepeatColumns="6">

    <HeaderTemplate>
        <asp:Table ID="TableCategories" runat="server" BorderColor="Black"  
          CssClass="floatRight" BorderStyle="Inset" BorderWidth="2px" GridLines="Both">
        </asp:Table>
    </HeaderTemplate>

ありがとう

4

1 に答える 1

0

DataList は、そのすべてのコントロールをカプセル化します。それらはページレベルではわかりません。

すべてのコントロールが常にそこにあると仮定すると、次のことを試すことができます。

var myTable = (Table)DataListProducts
             .Controls[0]
             .FindControl("TableCategories");
于 2013-03-29T09:03:13.693 に答える