Şimdi Ara

Dizin aralık dışındaydı. Negatif bir değer olmamalı ve koleksiyonun boyutundan daha küçük olmalıdır.

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
4
Cevap
0
Favori
12.829
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • arkadaşlar merhaba bir c# projesi üzerinde çalışıyorum bir datagridden öbürüne belirli koşula göre kayıt atıyorum ama nedense koşul ekleyince hata veriyor. Koşul eklemezsem gayet güzel atıyor. Anlayamadım sorunu :

    Dizin aralık dışındaydı. Negatif bir değer olmamalı ve koleksiyonun boyutundan daha küçük olmalıdır.
    Parametre adı: index

    kod : for (int z = 0; z < dataGridView1.Rows.Count; z++)
    {


    double sipver2 = Convert.ToDouble(dataGridView1.Rows[z].Cells[12].Value);
    if (sipver2 < 0) { continue; }
    else
    {

    dataGridView3.Rows.Add();

    dataGridView3.Rows[z].Cells[0].Value = dataGridView1.Rows[z].Cells[1].Value.ToString();
    dataGridView3.Rows[z].Cells[1].Value = dataGridView1.Rows[z].Cells[3].Value.ToString();
    dataGridView3.Rows[z].Cells[2].Value = dataGridView1.Rows[z].Cells[5].Value.ToString();
    dataGridView3.Rows[z].Cells[3].Value = dataGridView1.Rows[z].Cells[6].Value.ToString();
    double gel = Convert.ToDouble(dataGridView1.Rows[z].Cells[7].Value);
    dataGridView3.Rows[z].Cells[4].Value =gel;
    double env = Convert.ToDouble(dataGridView1.Rows[z].Cells[8].Value);
    dataGridView3.Rows[z].Cells[5].Value = env;
    double cik1 = Convert.ToDouble(dataGridView1.Rows[z].Cells[9].Value);
    dataGridView3.Rows[z].Cells[6].Value = cik1;
    double cik2 = Convert.ToDouble(dataGridView1.Rows[z].Cells[10].Value);
    dataGridView3.Rows[z].Cells[7].Value = cik2;
    double orthiz = Convert.ToDouble(dataGridView1.Rows[z].Cells[11].Value);
    dataGridView3.Rows[z].Cells[8].Value = orthiz;
    double sipver1 = Convert.ToDouble(dataGridView1.Rows[z].Cells[12].Value);
    dataGridView3.Rows[z].Cells[9].Value = sipver1;
    double kalsip1 = Convert.ToDouble(dataGridView1.Rows[z].Cells[13].Value);
    dataGridView3.Rows[z].Cells[10].Value = kalsip1;

    }
    }







  • Dur dur gördüm şimdi bakıyorum.



    < Bu mesaj bu kişi tarafından değiştirildi spartico -- 7 Şubat 2014; 19:08:53 >
  • kendi sorumu kendim çözdüm aynı duruma düşen arkadaşlar için durum şöyle datagrid1 de 12.sütun 0 dan büyük olanları öbür datagrid3 e atmaya çalışıyordum . Buradaki sorun
    dataGridView3.Rows[z].Cells[2].Value = dataGridView1.Rows[z].Cells[5].Value.ToString();
    bu kod da z değeri 2 datagrid içinde aynı olduğundan problem çıkıyor çünkü datagrid 3 boş ve diğer dattagridde kaçıncı satırda koşula uygun satır bulursa onun rowindex ini aldığından örneğin bizim koşulumuzu 15. satır sağladıysa bu sefer datagrid 3 ün 15. satırına yazdırmaya çalışıyor ama hiç satır olmayan bir datagridin 15. satırına yazamadığında böyle bir sorun teşkil etmiş. sorunun çözüm ü için ufak bir if yapısı ekledim oldu .

    if (dataGridView3.Rows.Count == 0)
    {
    x = 0;
    }
    else
    {

    x = dataGridView3.Rows.Count-1 ;
    }




  • donkiman D kullanıcısına yanıt
    Teşekkürler
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.