将datagrid项检查为数字

时间:2012-11-10 11:44:50

标签: c# windows forms types row

我正在尝试使用datagrid根据项目的数量显示不同的颜色行。

我遇到的问题是if语句:

if (RowType == < 5) 

无效,如何根据值解析要检查的行类型?

foreach (DataGridViewRow row in dtaPart.Rows)
{
    //Cell three is where quantity is 
    string RowType = row.Cells[3].Value.ToString();

    if (RowType ==  //> 5)
    {
        row.DefaultCellStyle.BackColor = Color.White;
        row.DefaultCellStyle.ForeColor = Color.Black;
    }
    else if (RowType == //< 5)
    {
        row.DefaultCellStyle.BackColor = Color.Orange;
        row.DefaultCellStyle.ForeColor = Color.Black;
    }
    else if (RowType == //< 1)
    {
        row.DefaultCellStyle.BackColor = Color.Red;
        row.DefaultCellStyle.ForeColor = Color.Black;
    }
}

1 个答案:

答案 0 :(得分:1)

您可以使用double value = double.Parse(RowType),然后检查是否value > 5, < 5, < 1等。

但是,如果您的datagrid列已包含数字类型,例如doubleint,则无需调用ToString()然后解析字符串;所以不要这样:

string RowTypeStr = row.Cells[3].Value.ToString(); 
double RowType = double.Parse(RowTypeStr);

但您可以直接转换值:

double RowType = (double)row.Cells[3].Value;