其实DataGrid也是要绑定DataSet的,只要你在绑定之前,把DataSet的内容改成你想要的数据就可以了,你可以把DataSet看做是一个临时数据库,你可以自由定义里面的表和表结构以及数据

解决方案 »

  1.   

    在DataGrid的ItemDataBound事件中编写代码将数据库中的内容转换成你想显示的内容

    if (e.Item.ItemIndex >= 0) 

    if (e.Item.Cells[2].Text.Length != 0) 
    {
    e.Item.Cells[2].Text = "abc";


    }
      

  2.   

    这个问题有点点麻烦,估计你需要重载DataGridColumnStyle.GetColumnValueAtRow()/SetColumnValueAtRow()方法。
    另外,如果你还想在客户改变部门编码的同时就刷新显示对应的部门名称的话,可能需要在DataSet中加载一个独立的部门基础资料表……这个东东说来话长,我也正在搞这个……