Asp.net
如何將 GridView 綁定到自定義對象?
如果我有以下 ASP.NET 程式碼(它不完整 - 顯然有很多缺失,但這些都不重要):
<asp:GridView> <Columns> <asp:TemplateField> <ItemTemplate> My Label: <asp:Label /> </ItemTemplate> </asp:TemplateField> <asp:TemplateField> <ItemTemplate> My Text Box: <asp:TextBox /> </ItemTemplate> </asp:TemplateField> </Columns> </asp:GridView>如果我在 CodeBehind 中有這樣的東西:
Private MyListOfObjects As List(Of MyObject) ... Public Class MyObject Public MyTextBoxString as String Public MyLabelString as String End Class如何綁定 GridView 以使一行相當於
MyListOfObjects列表中的一項,並且數據將在頁面載入或回發之間填充和持續存在?我以前從未做過這樣的自定義數據綁定,所以完整的解釋會很有幫助。到目前為止,我遇到的所有教程都只討論了直接將 GridViews 與數據庫查詢結果一起使用,這不是我需要的。謝謝!
只需將 gridview 的數據源設置為您的對象。
MyGridView.DataSource = myList MyGridView.DataBind()這是一個非常相似的文章:
將返回 List<employee> 的方法綁定到 gridview
看起來您正在使用 vb.net 中的列表。請記住,列表可以包含整數、字元串、日期、對象(這些包括使用者定義的類型(您的對象))。因此,您可以通過將數據源屬性設置為列表來將網格視圖綁定到列表對象。
在上面的範例中,myList 可能包含大量員工對像等。因此,將其分配給數據源,
.DataBind()並且瞧,每行都包含您的對象的 gridview。