如何将Sql里查询出来的数据处理后填充到DataGridView里?比如数据库里sex是0和1,我想在DataGridView中显示“男”和“女”,请问大虾们如何解决?非常感谢!!!

解决方案 »

  1.   

    直接 数据库的  select 语句中 case when sex = 0 then '男'  else '女' end或者 绑定时 参考  http://hi.baidu.com/caxin100/blog/item/85fe8ea082178a8746106476.html
      

  2.   

    private   void   dataGridView1_CellFormatting(object   sender,   DataGridViewCellFormattingEventArgs   e) 

    if(this.dataGridView1.Columns[e.ColumnIndex].HeaderText =="sex") 

    if(object.Equals(e.Value,0)) 

    e.Value="男 "; 

    else   if(object.Equals(e.Value,1)) 

    e.Value= "女 "; 


    }
      

  3.   

    方法一,在SQL文里直接处理了。如果是SqlServer的,用IIF, 如果是Oracle,用decode方法二,在结果的DataTable里追加一列,用Column的Expression            DataTable data = new DataTable();
                data.Columns.Add("Column1");
                data.Columns.Add("Column2");
                data.Columns.Add("Column3");            data.Rows.Add(new object[] { "edf", "0", "" });
                data.Rows.Add(new object[] { "abc", "1", "" });            data.Columns[2].Expression = "IIF(Column2='0', '男', '女')";            this.dataGridView1.DataSource = data;
      

  4.   

    如果只是性别这么简单,用1楼的方法就可以了。我现在还有其他列要处理,比如Unix时间戳转换后再填充。请大哥哥们给个明白点的方法。谢谢。