[英]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.