Gridview上的数据绑定和数据源

本文关键字:数据源 数据绑定 Gridview | 更新日期: 2023-09-27 18:12:27

我以前做过gridviews,在那里我从数据安全阅读器绑定所有SQL数据或在javascript级别指定列名和绑定。这有点不同,我对如何继续有点困惑。

我有一个处理所有SQL数据查询的业务类。

调用这个类来获取LIST。此列表包含集合和子集合。

var _InfoList = BusinessObjectClass.Get(_CriteriaKey);

我可以这样访问列表:-

Txtbox1.Text = _InfoList.ID#.ToString();

现在我正试图将LIST中的一个集合绑定到gridview。:-

C#:-
gvwMembers.DataSource = _InfoList.Members;
gvwMembers.DataBind();

Where Members is a collection…

但是这个语法没有添加任何东西到gridview…gridview为空

第二个方法:-

我也试过这样做:-

 List<BusinessObjectClass> Members = new List<BusinessObjectClass>();
 Members = _InfoList.Members;
 gvwVendors.DataSource = Members;
 gvwVendors.DataBind();

但是没有用……这是因为问题出在第二个语句中:-

Members = _InfoList.Members ....这不是一个有效的作业…有人能帮忙吗?

Gridview上的数据绑定和数据源

在评论中充实了一些细节之后,拥有一个没有定义列的简单GridView是完全可以的,但要确保AutoGenerateColumns不是假的。默认为true。这将基于被绑定对象的每个属性为您创建一个列。

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="true">
</asp:GridView>

为了选择要显示的属性,请在<Columns>部分中定义它们。

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false">
    <Columns>
        <asp:BoundField DataField="Property1" HeaderText="Property1" />
        <asp:TemplateField HeaderText="Property2">
            <ItemTemplate>
                <asp:Label ID="lblProperty2" runat="server" Text='<%# Eval("Property2") %>'></asp:Label>
            </ItemTemplate>
        </asp:TemplateField>
    </Columns>
</asp:GridView>