Member 14836421 Ответов: 3

Как только показывают строк цвет фона-это цвет.красный цвет в datagridview в Си#


Я показываю только color.red (строки) в Datagridview. Я не знаю используйте привязки данных в этом случае

записи: Я использую CellFormatting в Datagridview для BackColor (красный)

foreach (DataGridViewRow row in dgvVV1111.Rows)
{
  int X = Convert.ToInt32(row.Cells["TotalAmount"].Value);                    
  if (X == 0)
  {
    row.DefaultCellStyle.BackColor = Color.Red;
  }
}


Познакомьтесь с Google Drive – одним местом для всех ваших файлов[^]

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

Я стараюсь показывать только строки (color.red) В datagridview

3 Ответов

Рейтинг:
20

Garth J Lancaster

МСИО подряд элементом управления datagridview есть свойство Visible, например, практическое руководство.Строки[Индекс].Видны = [ложь|правда];

так, может быть, вы сделаете это ?

foreach (DataGridViewRow row in dgvVV1111.Rows)
{
  int X = Convert.ToInt32(row.Cells["TotalAmount"].Value);                    
  if (X == 0)
  {
    row.DefaultCellStyle.BackColor = Color.Red;
  }
  else
  {
    row.Visible = false;
  }
}
(Возможно, Вам понадобится intellisense для проверки свойства Visible, это смутное воспоминание) .. если это работает, вы можете добавить кнопку для отображения всех строк, установив all Visible в true

[Edit] я думаю, что в зависимости от того, что еще вам нужно сделать, вам будет лучше использовать bindingsource и фильтр.

Некоторые полезные ссылки могут быть Подробное Руководство По Привязке Данных[^], Резюме Практическое Руководство[^] и DataGrid со встроенной функцией фильтра[^] [/Редактировать]


BillWoodruff

+5

Рейтинг:
2

Member 14836421

Спасибо Вам за вашу помощь. Я успешно закодировался...

if (chkRedLine.Checked == true)
            {
                foreach (DataGridViewRow row in dgvVV1111.Rows)
                {
                    int X = Convert.ToInt32(row.Cells["TotalAmount"].Value);
                    if (X == 0)
                    {
                        row.DefaultCellStyle.BackColor = Color.Red;
                    }
                    else
                    {
                        CurrencyManager currencyManager1 = (CurrencyManager)BindingContext[dgvVV1111.DataSource];
                        currencyManager1.SuspendBinding();
                        row.Visible = false;
                        currencyManager1.ResumeBinding();
                    //www.codeproject.com/Questions/657059/Row-associated-with-the-currency-managers-position
                    }                    
                }
            }


Рейтинг:
14