C# C# Windows Form Örnekleri Programlama

C# DataGridView Koşullu Satır Renklendirme

Bu yazımızda DataGridView satırlarında belirli şarta göre renklendirme ve hücrede yazı renginin değiştirilmesinin nasıl yapılacağı ile ilgili bir örnek oluşturacağız. Örneğimizde bir şirkete ait aylık gelir tablosunda belirleyeceğimiz tutara uygun olan satırları renklendireceğiz.

Örneğimizde dbSirket isimli access veritabanından gelir tablosunu kullanacağız. Bu tablodaki verileri listeledikten sonra dataGridView‘ de bulunan ilgili satırın gelirin 100.000 den büyük, 50.000 den büyük ve 0-50.000 arasında olması durumunda farklı renklerde olmasını sağlayacağız. Ayrıca 0-50.000 arası olması durumunda yazı rengininde değiştirilmesini sağlayacağız.

Örneğimize ait kodlar ve ekran çıktısı aşağıdaki gibi olcaktır.

Örneği aşağıdaki linkten indirebilirsiniz.

İNDİR

11 Yorum

  • selamunaleykum admin bir sorum olacak sana

    for (int i = 0; i <= dataGridView1.Rows.Count – 1; i++)
    {
    foreach (DataGridViewRow row in dataGridView1.Rows)
    {
    foreach (DataGridViewCell cell in dataGridView1.Rows[i].Cells)
    {
    if (cell.Value != null)
    {
    if (cell.Value.ToString().ToUpper() == "1-TAM BOYUN KESİLMESİ")
    {
    ///şartı bu olanların 9. sütunda olan sayısal verilerinin toplanmasını istiyorum ustam lakin bir türlü yapamadım.
    cell.Style.BackColor = Color.DarkTurquoise;
    break;
    } }

  • bu şartı sağlatamadım bir türlü nerede hata yapıyorum
    else if (Convert.ToString(textBox1.Text) == Convert.ToString(dataGridView1.Rows[i].Cells[“estas_kodu”].Value) )
    {
    VeriDoldur();

    }

  • hocam burada aynı zamanda operasyon_adi’na göre artan şelide sıralama yaptırmak istiyorum lakin bir türlü olmadı yardımcı olurmusun
    baglanti.Open();
    string sql = “SELECT * FROM kayit Where tarih BETWEEN @tar1 and @tar2 and estas_kodu=@veri”;
    DataTable dt = new DataTable();
    OleDbDataAdapter adp = new OleDbDataAdapter(sql, baglanti);
    adp.SelectCommand.Parameters.AddWithValue(“@tar1”, dateTimePicker1.Value);
    adp.SelectCommand.Parameters.AddWithValue(“@tar2”, dateTimePicker2.Value);
    adp.SelectCommand.Parameters.AddWithValue(“@veri”, textBox1.Text.ToString());
    adp.Fill(dt);
    baglanti.Close();
    dataGridView1.DataSource = dt;

        • hocam merhaba şu şartı bi sağlayamadım hatayı nerede yapıyorum acaba
          private void button1_Click(object sender, EventArgs e)
          {
          foreach (DataGridViewRow row in dataGridView1.Rows)
          {
          for (int i = 0; i < dataGridView1.Rows.Count; ++i)
          {

          if (textBox1.Text == "")
          {
          MessageBox.Show("Boş geçmeyiniz");
          }
          else if (textBox1.Text == (Convert.ToString(row.Cells["estas_kodu"].Value)))
          {
          VeriDoldur();

          }
          else
          {
          MessageBox.Show("böyle bir estas koduna ait veri bulunmamaktadır");
          }

          }
          }
          }

  • Hocam Merhaba;

    Aşağıdaki kodlar bende çalışmadı. Neden olabilir?
    Not: dataGridView3 doğru, sütun id den sonraki sütun yani 1 o da doğru

    Kodlar

    for (int i = 0; i < dataGridView3.Rows.Count – 1; i++)
    {
    DataGridViewCellStyle rnk = new DataGridViewCellStyle();

    if (dataGridView3.Rows[i].Cells[1].Value.ToString() == "Ödeme")
    {
    rnk.BackColor = Color.Yellow;

    }
    else if (dataGridView3.Rows[i].Cells[1].Value.ToString() == "Borçlanma")
    {
    rnk.BackColor = Color.Orange;
    }

    dataGridView3.Rows[i].DefaultCellStyle = rnk;
    }

  • Merhabalar , Bu işlemi , Textboxa girilen ID nin oldugu satırın rengini değiştirmek üzere nasıl kullanabilirim acaba ?

    • Merhaba. Yine aynı yöntemle kullanabilirsiniz. textboxtan aldığınız id yi for döngüsü içinde kontrol ettirerek yapabilirsiniz.

admin için bir yanıt yazın X

Web Tasarım & Programlama sitesinden daha fazla şey keşfedin

Okumaya devam etmek ve tüm arşive erişim kazanmak için hemen abone olun.

Okumaya devam et