例如datagridview中有一列是用户名,在这个表里,我只存的是用户的ID,至于用户名需要根据ID到另外一个表中去查询。
而我在这个datagridview中,想显示用户名。现在的问题是有没有好的方法,类似于表达式似的,直接调用我写好的根据ID找用户名的方法。把用户的ID替换成用户名??由于使用的实体框架查询数据,并去掉了表和表的关联,所以没发采用多表链接或视图的方式。由于程序及整体框架的特殊性,所以这里的用户名只能一条条的调用我的方法替换。有没有好的方法呢》?

解决方案 »

  1.   

    那你就使用DataGridViewComboBox吧,DataSource就是用户表。ValueMember为用户ID,DisplayMember为用户名。这样就可以啦。
      

  2.   

    取数据的时候直接将用户名和ID取出来
    value属性设置对ID,用户名设为对应这个ID的单元格的tag,这样不是可以做到,你点某个单元格的时候
    然后直接取它的tag就是用户名了不知道你是不是这个意思。
      

  3.   

    解决了,在datagridview的CellFormatting事件里写了代码
    if (dataGridView1.Columns[e.ColumnIndex].Name.Equals("Column3"))
              {              string TYpeID = e.Value.ToString();
                  e.Value = TypeList[TYpeID];          }