alexsyy112326
alexsyy112326
采纳率0%
2017-05-23 01:39 浏览 2.0k

C# EF Winform 面向对象开发

3

各位:我想问下 我用Winform 开发的管理系统,ORM 用的EF(Entity Framework) ,

界面大部分是 DataGrid, EF 可以直接把对象保存入库, 但是在实际操作修改
DataGrid的一行数据时,实际上一行数据就是一个实体对象,我怎样能直接获取
这行数据直接封装的对象, 而不是间接获取此行的每列的值 在封装成实体对象 ?
另外网上说Datagrid 如果直接绑定List, 控件无法感知对象的修改,
请问是否不适合直接绑定List, 谢谢

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

1条回答 默认 最新

  • pehao 三项超标 2017-05-26 12:10
      datatable的话 row.DataBoundItem 是 DataRow 需要自己去转换,
            下面是list的示例:
    
            private void button1_Click(object sender, EventArgs e)
        {
            List<Mod> list = new List<Mod>();
            list.Add(new Mod() { id = 12 });
            dataGridView1.DataSource = list;
    
            //设置列名称
            dataGridView1.Columns[0].HeaderText = "FF";
    
            //获取第一行数据,如果是选择行的话也可以.
            Mod m = dataGridView1.Rows[0].DataBoundItem as Mod;
        }
    
        public class Mod
        {
            public int id { get; set; }
        }
    
    点赞 评论 复制链接分享

相关推荐