簡體   English   中英

在Repeater ASP.NET控件中以所需樣式動態顯示列名稱和列值

[英]Display column name and column value dynamically in desired style in Repeater ASP.NET control

我需要的是在中繼器或任何其他類似這樣的控件中顯示數據:

<asp:Repeater ID="MyRepeater" runat="server" DataSourceID="MyDT">
    <ItemTemplate>
        <asp:Label Text="NAME OF FIRST COLUMN" runat="server" ID="NameLabel" />
        <br />
        <asp:Label Text="VALUE OF FIRST COLUMN" runat="server" ID="ValueLabel" />
        <hr />
    </ItemTemplate>
</asp:Repeater>

然后,如果我在后面的代碼中更改了DataSourceID ,則轉發器以相同的格式動態顯示新數據。 為什么我需要這樣做? 因為我的數據庫中有很多表,所以我不想為每個表設計一個轉發器。

非常感謝你。

您可以在Repeater的OnItemCreated事件中獲取列名。

例如

DataRowView rowview = (DataRowView)e.Item.DataItem;
DataRow row = rowview.Row;
foreach (DataColumn col in row.Table.Columns)
   {
      nameOfColumn = col.ColumnName;
      // then add that to the relevant control in the row
   }

如果列數根據表而變化-那么您將需要研究使用嵌套轉發器和一些后面的代碼來控制它們。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM