将通用列表数组绑定到GridView

时间:2009-03-06 16:32:27

标签: c# asp.net .net list gridview

您好我有一个List,它返回一个“Question”数组。我的问题是如何将其绑定到网格视图?当我尝试调用Question.Ordinal时,我得到它在数据源中不存在。我使用以下代码:

GridView1.DataSource = myList.GetQ();
GrdiView1.DataBind();

myList.GetQ()返回一个List,它是一个“Question”数组。

当我将DataField列设置为“!”时我得到了对象问题。我的问题是如何获取对象属性?我试过“!.Ordinal”不起作用。我正在阅读这篇文章以供参考,here,非常感谢任何帮助,谢谢。

3 个答案:

答案 0 :(得分:1)

尝试使用以下语法:

<%# ((MyObject)Container.DataItem).MyField %>

答案 1 :(得分:1)

直接将其设置为Ordinal,作为您刚刚链接到的帖子中的第一个示例:

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false">
<Columns>
   <asp:BoundField HeaderText="ID" DataField="CustId" />
   <asp:BoundField HeaderText="Name" DataField="Name" />
   <asp:BoundField HeaderText="City" DataField="City" />
</Columns>
</asp:GridView>

说:

<asp:BoundField HeaderText="A Header" DataField="APropertyOfQuestion" />

答案 2 :(得分:1)

你必须定义类的属性成员,作为一个属性,即

public string ProductName
{
    get
    {
        return _productName;
    }
    set { }

}

或VB

公共属性ProductName()as string 设置..

GET ...

结束财产

重要:是必需定义的get方法