2009-09-07 209 views
2

我有一個List (Of MyObject)綁定到Page_Load事件中的GridView。 MyObject有一個子對象作爲一個屬性,ChildObject它也有一個屬性本身,ChildProperty綁定到屬性的屬性

在我的GridView,我想結合的領域之一ChildProperty,但這樣做是這樣的:

<asp:boundfield datafield="ChildObject.ChildProperty" /> 

導致錯誤:

System.Web.HttpException: A field or property with the name 'ChildObject.ChildProperty' was not found on the selected data source.

如何綁定到財產,還是不可能?我想我可以在我的父對象中創建一個ReadOnly屬性來讀取子屬性,但這有點臭。

任何想法?

謝謝!

+0

重複:你怎麼一個gridview列綁定到一個子類值? - http://stackoverflow.com/questions/627996/how-do-you-bind-a-gridview-column-to-a-subclass-value – 2009-09-07 22:28:59

回答

4

您可以使用:

<asp:TemplateField> 
    <ItemTemplate> 
    <%# DataBinder.Eval(Container, "DataItem.Property.ChildProperty.GrandChildProperty") %> 
    </ItemTemplate> 
</asp:TemplateField> 
+0

啊,真的。希望有一個更簡單的方法,但這絕對有效 – Jason 2009-09-07 22:16:59