不知道怎么说。用例子来说吧:
我两表有外键关系。
现用nhibernate查出一表。
通过MODEL中属性访问另表的字段。如UserInfo userInfo = new UserInfo();
userInfo.GroupInfo.Name是得到组名。
现怎么把GroupInfo.Name绑定到datagridview中?
BS能实现,winform怎么做啊?
100分相送。

解决方案 »

  1.   

    DataGridView1.DataSource=new BindingList<MyClass>(new List<MyClass>())
    在绑定时设置单元格值
      

  2.   

    private void dataGridView1_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
    {
        if (e.ColumnIndex==2)
        {
            int i= (int)e.Value;
            switch (i)
            {
                default:
                    e.Value = "其它";
                    break;
                case 1:
                    e.Value = "男";
                    break;
                case 2:
                    e.Value = "女";
                    break;
            }
        }
    }
      

  3.   

    可以转换成datatable,然后再绑定datagridview
      

  4.   

    UserInfo userinfo=new UserInfo ();List<UserInfo> userinfoList=new List<UserInfo>();
    userinfoList.add(userinfo);datagridview.datasource=userinfoList;思路写出来了。datagridview除了绑定datatable之外,任何继承ILIST接口的类都可以绑定上去。好运!
      

  5.   

    不是直接绑的。是通过bindingdatasource间接的。
      

  6.   

    1.重写GroupInfo的ToString()方法。public override string ToString()
    {
        return this.Name;
    }2.可以在DataGridView的行添加事件里绑定数据:private void dataGridView1_RowsAdded(object sender, DataGridViewRowsAddedEventArgs e)
    {
        DataGridViewRow row = this.dataGridView1.Rows[e.RowIndex];
        row.Cells[你的索引].Value = userInfo.GroupInfo.Name;
    }