Как установить цвета строк сетки, я пробовал, но показывает, что приведение недействительно?

protected void gvcolors_RowDataBound(object sender, GridViewRowEventArgs e)
{
 if (e.Row.RowType == DataControlRowType.DataRow)
 {
 int esal = (int)DataBinder.Eval(e.Row.DataItem, "Emp_Sal");
 if (esal > 12000)
 {
 e.Row.ForeColor = System.Drawing.Color.Blue;
 e.Row.BackColor = System.Drawing.Color.LightPink;
 e.Row.Font.Italic = true;
 }
 }
}

Указанный приказ недействителен. Я принимаю Emp_Sal, int datatype..but, он показывает исключение.. это правильно или нет.пожалуйста, помогите мне..

1 ответ

Вместо

int esal = (int) DataBinder.Eval(e.Row.DataItem, "Emp_Sal" );

Возможно, вы захотите попробовать

int esal = (int)e.Row.Cells[1].Text; //index of the Emp_Sal column

Вы должны использовать int.tryparse.

licensed under cc by-sa 3.0 with attribution.