C#如何使用dataGridView控件显示类对象数据

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wuguanghao/article/details/77131454

要实现用C# dataGridView控件显示类对象数据需要使用到泛型集合的概念,
因为dataGridView中需要同时显示多列的信息,多个的信息以对象属性的方式呈现,也就是说,每一个列的列头都关联了这个对象的属性值,当我们需要显示多行信息的时候,就只需要找到这个对象的名称就可以自动获取到该列的信息。

//  这里我们演示一个简单的示例
  //创建一个泛型集合,也就是Halcon对象集合
   private List<Halcon>halconList=new List<Halcon>();
 private void btnShowList_Click(object sender, EventArgs e)
        {
            //同时创建N多个对象
            Halcon h1 = new Halcon(1.2,4.2,5.4);
            Halcon h2 = new Halcon(1.2, 4.2, 5.4);
            Halcon h3 = new Halcon(1.2, 4.2, 5.4);
            Halcon h4 = new Halcon(1.2, 4.2, 5.4);
            Halcon h5 = new Halcon(1.2, 4.2, 5.4);
            halconList.Add(h1);
            halconList.Add(h2);
            halconList.Add(h3);
            halconList.Add(h4);
            halconList.Add(h5);
           //初始化控件的数据,
            this.dataGridView1.DataSource = null;
            **//将对象halconlist中的数据与dataGridView1中的数据绑定,**
            this.dataGridView1.DataSource = this.halconList;
        }

上述代码最后一行其实还有一个特别关键的设置,
这个就是将行坐标的DataPropertyName与类中的私有成员进行绑定。
数据绑定

下面再来看看类的设计
每一个私有成员都应该设定其属性,标准写法,

 class Halcon
    {
        private double resultX;
        public double ResultX
        {
            get { return resultX; }
            set { resultX = value; }
        }

        private double resultY;
        public double ResultY
        {
            get { return resultY; }
            set { resultY = value; }
        }

        private double resultAngle;
        public double ResultAngle
        {
            get { return resultAngle; }
            set { resultAngle = value; }
        }

        public Halcon(double x,double y,double angle)
        {
            this.resultX = x;
            this.resultY = y;
            this.resultAngle = angle;
        }
    }

最终结果如图显示:
结果显示

猜你喜欢

转载自blog.csdn.net/wuguanghao/article/details/77131454