CS中,我想改变datagridview显示,比如数据库绑定,是0时候显示 新任务,1显示编辑中,2显示审核中,等等类似BS中,用个方法return
<%#Method(DataBinder.Eval(Container.DataItem, "state")) %>
publi string Methid()
{
coding......
}在winform中是如何来实现的DataGridView绑定显示结果是这样
id  other   state
1    aa       1
2    bb       1
3    cc       2要实现DataGridView显示绑定结果是
id  other   state
1    aa       新任务
2    bb       新任务
3    cc       编辑中

解决方案 »

  1.   

    1.可以考虑sql的replace函数,repalce(要置换的字段,需要替代的字符,替换后的字符)
    2.绑定后遍历DataGridView修改
      

  2.   

    循环判断,然后单元格赋值for(int count=0;count<dataGridView1.Rows.count;count++)
    if(this.dataGridView1.Rows[count].Cells["state"].value.tostring()=="1")
    {
    this.dataGridView1.Rows[count].Cells["state"].value="新任务";
    }
      

  3.   

    1 如果是泛型加个属性就可以了2 如果是TABLE可以考虑使用 Expression  DataTable _Table = new DataTable();
                _Table.Columns.Add("State", typeof(int));
                _Table.Rows.Add(new object[] { 1 });
                _Table.Rows.Add(new object[] { 1 });
                _Table.Rows.Add(new object[] { 1 });
                _Table.Rows.Add(new object[] { 2 });
                _Table.Columns.Add("State2");
                _Table.Columns[1].Expression = "iif(State= 1, '新任务', '编辑中')";
                dataGridView1.DataSource = _Table;
      

  4.   

    select id,other,replace(replace(replace(state,'0','新任务'),'1','编辑中'),'2','审核中') as state from table
      

  5.   

    SELECT ID,OTHER,CASE STATE WHEN 1 THEN '新任務' WHEN 2 TEHN '編輯中' END AS STATE FROM 表      (這個是用SQL語句上的處理,但是前提條件是所謂的幾個狀態必須是固定的,那樣SQL語句可以明確的指定在什麽情況下返回什麼樣的數據,否則只能自己建立一個單獨的表來處理.方法還有很多.)
      

  6.   

    用sql很不错,不过table表里字段太多,select *  了怎么办
      

  7.   


    那就一个一个写吧.这个没有很好的方法.
    7楼的SELECT ID,OTHER,CASE STATE WHEN 1 THEN '新任務' WHEN 2 TEHN '編輯中' END AS STATE FROM 表
    就是很好的例子.或者就是你在前台循环.但是效率不如上面的SQL好.
      

  8.   

    --注意绑定newstate列--
    select *,replace(replace(replace(state,'0','新任务'),'1','编辑中'),'2','审核中') as newstate from table