Member 13040174 Ответов: 1

Как установить цвет для datatable в C# на основе условия


У меня есть datatable со 100 записями, мне нужно установить 6 цветов в общей сложности для всех строк datatable. Первые 6 строк должны быть установлены для 6 цветов, которые у меня есть. Следующие 6 строк должны быть добавлены. Точно так же мне нужно установить цвет

Что я уже пробовал:

for (int i = 0; i < GetDetails.Rows.Count; i++)
              {
                  for (int j = 0; j < dt.Rows.Count; j++)
                  {
                      if (Convert.ToDateTime(dt.Rows[j]["CREATED_DATE"]).ToString("dd/MM/yyyy") == Convert.ToDateTime(GetDetails.Rows[i]["CREATED_DATE"]).ToString("dd/MM/yyyy"))
                      {
                          if (j % 2 == 0)
                          {
                              GetDetails.Rows[i]["color"] = "#FB707D";
                          }
                          else if (j % 3 == 0)
                          {
                              GetDetails.Rows[i]["color"] = "#39CECD";
                          }
                          else
                          {
                              GetDetails.Rows[i]["color"] = "#8677EF";
                          }
                      }
                  }

              }

1 Ответов

Рейтинг:
9

OriginalGriff

Вы не можете установить цвет на DataTable: это не элемент управления презентацией, который управляет фактическим отображением - это просто механизм хранения данных, он не имеет представления о среде, в которой будут использоваться данные, которые он предоставляет. Вы устанавливаете цвет данных как часть элемента управления дисплеем, и то, как именно вы это сделаете, будет зависеть от окружающей среды и самого элемента управления.

Например, здесь показано, как это сделать для WinForms DataGridView: Раскрашивание ячеек DataGridView в соответствии с их содержимым в WinForms[^]