小弟现在需要设定datagridview中的一列:DataGridViewComboBoxColumn的默认项,
原来是通过,datagridview的属性里面的defaultcellstyle--cellstyle--设置的默认显示项,现在发现需要根据条件:
如果数据库里对应数值为 1,则 显示“启动”;数据库里是 0,显示“关闭”,下面是我写的代码
if (dt_local.Rows[i]["Control"].ToString()=="1")
                {
                    dataGridView1.Rows[i].Cells["Control"].Value = "启动";//这里写的不对
                }
                else
                {
                    dataGridView1.Rows[i].Cells["Control"].Value = "关闭";这里写的不对
                }
请高手给看看错的那句该怎么写,谢谢

解决方案 »

  1.   

    建议你用DataColumn的Expression实现,这属于计算字段的问题。你可以在读取数据以后,手工添加一列,这个列的内容,从Control列计算得到:
    myDataColumn.Expression = "IIF(Control=1, '启动', '关闭') 
      

  2.   

    写到CellFormatting事件:private void dataGridView1_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
            {
                if (e.RowIndex >= 0 && e.ColumnIndex == 3)//在第三列
                {
                    if (e.Value.ToString()=="1")
                    {
                        e.Value ="启动";
                    }else{
    e.Value="关闭";
    }
                 }
            }
    -----------
    三易通软件(服装进销存,服装进销存软件,服装进销存管理软件,服装进销存管理系统,服装店管理软件,服装店管理系统,服装销售管理软件,服装销售管理系统,服装零售管理软件,服装零售管理系统,服装店软件,服装店收银软件)http://www.3etsoft.cn
      

  3.   

    直接用2楼的方法可以,CellFormatting中写~
      

  4.   

    感谢老大的回答,你说的这个应该怎么用呢?
    我是在窗体load的时候,就要把datagridview里面的DataGridViewComboBoxColumn根据0和1分别显示"启动"或者“关闭”