在数据库中有一个字段 empsex 字段,它用0和1作为他的值,0代表男,1代表女,还有一个字段
  empgrade 字段,它用A和B做为它的值,A代表一般职员,B代表经理
  
  但是在DataGrid中显示查询的结果时,empsex 字段对应的列显示男和女,empgrade字段对应的列显示是一般职员还是经理,不知道怎么样才可以实现,希望各位能够帮忙给看一下

解决方案 »

  1.   

    http://singlepine.cnblogs.com/articles/289156.html
      

  2.   

    在ItemDataBound事件中实现:private void dg_week_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
    {
      if(e.Item.ItemIndex >=0)
      {
        DataRowView data = (DataRowView)e.Item.DataItem;
        if(int.prase(data["empsex"].ToString())==0)
        e.Item.Cells[0].Text = "男";//这里假设性别列为DATAGRID中的第一列
        else e.Item.Cells[0].Text = "女";
      }
    }
      

  3.   

    两种解决方案:
    1\在数据库查询时就可换过来,select ...,case empsex when '1' then '男' else '女' as empsex ,.....where ....
    2\在数据绑定时加代码,
    if e.item.cells(n).Text="1" then
       e.item.cells(n).Text="男"
    else
       e.item.cells(n).Text="女"
    end if
      

  4.   

    个人觉得在查询中做转换较好 :)
    select case empsex when '1' then '男' else '女' as 'sex',
           case empgrade where 'A' then '一般职员' else '经理' as 'manager'
    from tbname
      

  5.   

    select case empsex when '1' then '男' else '女' as 'sex',
           case empgrade where 'A' then '一般职员' else '经理' as 'manager'
    from tbname
    用这个最直接