绑定列表到GridView

本文关键字:GridView 列表 绑定 | 更新日期: 2023-09-27 18:09:32

我有一个信用卡对象列表。信用卡类如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace Client
{
    public class CreditCard
    {
        public String A_Number;
        public String A_Name;
        public String A_Type;
        public String A_Owner_Type;
        public String Bank_City;
        public String Bank_State;
        public String Bank_ZIP;
        public String Balance;
        public String C_Username;
        public CreditCard()
        {
        }
    }
}

在另一个类中,我试图将列表绑定到网格视图,如下所示:

protected void Page_Load(object sender, EventArgs e)
        {
            List<CreditCard> list = (List<CreditCard>)Session["list"];
            GridView_List.DataSource = list;
            GridView_List.DataBind();
        }

但是,我收到以下错误:

The data source for GridView with id 'GridView_List' did not have any properties or attributes from which to generate columns.  Ensure that your data source has content.

有什么问题吗?我检查了列表实际上包含数据,所以我不知道为什么它不会工作?如何解决这个问题?

绑定列表到GridView

数据绑定必须使用公共属性。更新你的类如下:

  public class CreditCard
    {
        public String A_Number { get; set; }
        public String A_Name { get; set; }
        public String A_Type { get; set; }
        public String A_Owner_Type { get; set; }
        public String Bank_City { get; set; }
        public String Bank_State { get; set; }
        public String Bank_ZIP { get; set; }
        public String Balance { get; set; }
        public String C_Username { get; set; }
        public CreditCard() { }
    }

您已经将CreditCard定义为具有字段的对象。数据绑定只能通过属性完成。因此,您需要对所有字段做这样的操作:

public String A_Number { get; set; }