【问题标题】:Rows in DataGridView are not changing colorDataGridView 中的行没有改变颜色
【发布时间】:2013-02-22 16:54:13
【问题描述】:

我只是想将红色作为特定列中值为 4 的行的背景颜色,但即使有值大于 4 的行,所有行的背景颜色都是白色。我也单步执行代码,因此我知道代码实际上执行代码以更改背景色。

我在这里做错了什么。

dataGridViewMain.DataSource = table;
dataGridViewMain.Sort(dataGridViewMain.Columns["Days in the shop"], ListSortDirection.Descending);
      foreach (DataGridViewRow row in this.dataGridViewMain.Rows)
      {
        if (Convert.ToInt32(row.Cells["Days in the shop"].Value) > 4)
           row.DefaultCellStyle.BackColor = Color.Red;
      }

【问题讨论】:

    标签: c# winforms


    【解决方案1】:

    显然我需要将逻辑放入 RowPostPaint 事件中。现在一切都好。

    【讨论】:

      【解决方案2】:

      我在创建子窗体时遇到了 DataGridView 单元格颜色的问题,我很难找到解决方案。如果使用子表单,我必须确保我更改了表单加载事件的颜色。我最初尝试从 main 方法更改颜色,但没有成功。

      【讨论】:

        猜你喜欢
        • 2012-03-20
        • 1970-01-01
        • 2014-03-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-07-31
        • 1970-01-01
        相关资源
        最近更新 更多