0

我使用此代码但未将错误对象引用设置为对象实例。

using (SqlConnection sqlConn = new SqlConnection("Data Source=OMKAR-PC;Initial Catalog=omkar;Persist Security Info=True;User ID=sa;Password=omkar;Pooling=False"))
   {
       sqlConn.Open();

       using (SqlDataAdapter a = new SqlDataAdapter("SELECT * FROM customer ", sqlConn))
       {
          DataTable t = new DataTable();
          a.Fill(t);
          dataGridView1.DataSource = t;

          this.dataGridView1.CellFormatting +=
new DataGridViewCellFormattingEventHandler(dataGridView1_CellFormatting);


        foreach (DataGridViewRow row in dataGridView1.Rows)
        {
           try
            {
             string  CNumColour = dataGridView1.CurrentRow.Cells[0].FormattedValue.ToString();
             if (CNumColour != null)
             {
               foreach (DataGridViewCell cells in row.Cells)
               {
                 if (CNumColour == "yes")
                   { 
                     cells.Style.ForeColor = Color.Pink;
                   }
                  else if (CNumColour == "no")
                  {
                     cells.Style.ForeColor = Color.Red;
                  }
                }
              }
            } 
         catch (System.Exception ex)
         {

         }
      }
       sqlConn.Close();
     }
4

1 回答 1

1

检查这条线。

string  CNumColour = dataGridView1.CurrentRow.Cells[0].FormattedValue.ToString();

dataGridView1.CurrentRow.Cells[0].FormattedValue.ToString();

给出空值。

如果可能的话,通过将当前行的索引指定为:

dataGridView1.Rows[row.RowIndex].Cells[0].FormattedValue.ToString();

希望它有帮助。

于 2013-04-30T05:43:17.387 回答