AccessTr.neT
Vb.net Datagridview Mükerrerleri Teke Düşürme. - Baskı Önizleme

+- AccessTr.neT (https://accesstr.net)
+-- Forum: Visual Basic .NET (https://accesstr.net/forum-visual-basic-net.html)
+--- Forum: Visual Basic .NET Cevaplanmış Soruları (https://accesstr.net/forum-visual-basic-net-cevaplanmis-sorulari.html)
+--- Konu Başlığı: Vb.net Datagridview Mükerrerleri Teke Düşürme. (/konu-vb-net-datagridview-mukerrerleri-teke-dusurme.html)



Vb.net Datagridview Mükerrerleri Teke Düşürme. - feraz - 01/05/2017

Ekteki dosyadaki Datagriddeki veriler nasıl benzersiz yapılır?

Kaydetmeye felan gerek yok sadece Datagridde tek olarak görükecek.
Örnek 5 tane a varsa bir tane a olacak.
İnternetten kod buldum çalışmıyor.

Saygılar.
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
       For i As Integer = 0 To Me.DataGridView1.RowCount - 2

           For j As Integer = i + 1 To Me.DataGridView1.RowCount - 2
               If DataGridView1.Rows(i).Cells(0).Value = DataGridView1.Rows(j).Cells(0).Value Then
                   DataGridView1.Rows.Remove(DataGridView1.Rows(i))

               End If
           Next
       Next
   End Sub



Cvp: Vb.net Datagridview Mükerrerleri Teke Düşürme. - alican60 - 01/05/2017

Kod:
Buton 1 kodlarını bunlarla değiştiriniz.

      Dim satır = DataGridView1.Rows.Count - 1
       Dim x As Integer = 0
       While x < satır - 2
           For y As Integer = (satır - 2) To (x + 1) Step -1
               If DataGridView1.Rows(x).Cells(0).Value.ToString() = DataGridView1.Rows(y).Cells(0).Value.ToString() Then
                   DataGridView1.Rows.Remove(DataGridView1.Rows(y))
                   satır -= 1
               End If
           Next
           x += 1
       End While




Cvp: Vb.net Datagridview Mükerrerleri Teke Düşürme. - feraz - 02/05/2017

Malisef hocam.

Kod çalışınca dosyadaki cc 2 adet çıktı.

Teşekkürler.


Cvp: Vb.net Datagridview Mükerrerleri Teke Düşürme. - alican60 - 02/05/2017

Kod:
      Dim satır = DataGridView1.Rows.Count - 1
       Dim x As Integer = 0
       While x < satır - 1
           For y As Integer = (satır - 1) To (x + 1) Step -1
               If DataGridView1.Rows(x).Cells(0).Value.ToString() = DataGridView1.Rows(y).Cells(0).Value.ToString() Then
                   DataGridView1.Rows.Remove(DataGridView1.Rows(y))
                   satır -= 1
               End If
           Next
           x += 1
       End While




Cvp: Vb.net Datagridview Mükerrerleri Teke Düşürme. - feraz - 02/05/2017

Ali hocam diğer tarfta yazdığım burdada geçerli.


Teşekkürler.
Galiba sizden başka vb.net anlayan yok burda Img-grin


Cvp: Vb.net Datagridview Mükerrerleri Teke Düşürme. - feraz - 03/05/2017

Ali Can hocam alttaki kodla sorunu hallettim.
Verdiğiniz kodun
 başına
Kod:
Me.DataGridView1.AllowUserToAddRows = True
sonunada
Kod:
Me.DataGridView1.AllowUserToAddRows = False
ekledim.

Teşekkürler yadım için.

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
       Me.DataGridView1.AllowUserToAddRows = True 'Satir ekleme olayini iptal eder ayarlardaki
       Dim satır = DataGridView1.Rows.Count - 1
       Dim x As Integer = 0
       While x < satır - 1
           For y As Integer = (satır - 1) To (x + 1) Step -1
               If DataGridView1.Rows(x).Cells(0).Value.ToString() = DataGridView1.Rows(y).Cells(0).Value.ToString() Then
                   DataGridView1.Rows.Remove(DataGridView1.Rows(y))
                   satır -= 1
               End If
           Next
           x += 1
       End While
       Me.DataGridView1.AllowUserToAddRows = False
   End Sub