Vatansever
Asistan
- Katılım
- 23 Ağustos 2007
- Mesajlar
- 405
- Reaksiyon puanı
- 1
- Puanları
- 18
Arkadaşlar bir sorunum var bir datagrid'te 2 adet sütun var stn1 ve stn2 diyelim bunlara,
bu sütunların içlerindede 30 satırda bilgi dolu stn1'de isimler var stn2'de ise 0'dan 29'a kadar
rakamlar var rakamlar benzersizdir aynısından ikitane yok ve karışık sıralı, istediğim stn1'deki isimleri stn2'deki rakamlara göre dizip aralarına virgül koyarak bir stringe aktarmak
Yani stn2'de 0 hangi sırada ise o bulunup stn1'deki değer alınıp yanına virgül konulacak sonra stn2'deki 1 rakamı aranıp bulunacak ve stn1'deki karşılığı ilk bulunmuş değere eklenecek bu böyle devam edecek bunun döngüsünü kuramadım programımın başka yerinde ayar kaydederkende benzeri bir kod kullandım aşağıda onu veriyorum böylece kodlar elinizde kod yazmanıza pek gerek yok ihtiyaç duyacağınız kodların hepsi aşağıda var sadece buna uygun döngüyü yazmak lazım döngü nasıl olacak.
Aşağıda verdiğim kodda programımda bir datagridde bulunan sütunlardaki bilgileri satır satır okuyup bulduğu değerlerin aralarına virgül koyup bir ini dosyasına kaydediyor tabi sütunlara göre bilgileri ayrıp kaydediyor benim yazacağım kodda %90 aynı olacak en önemli farkı bu kodda düz bir şekilde okuma yapılıyor ve bilgiler kaydediliyor bana lazım olanda ise stn2'deki rakamlara göre okutup stn1'deki bilgileri aralarına virgül koyup dizilmiş olarak kaydetmek
bu sütunların içlerindede 30 satırda bilgi dolu stn1'de isimler var stn2'de ise 0'dan 29'a kadar
rakamlar var rakamlar benzersizdir aynısından ikitane yok ve karışık sıralı, istediğim stn1'deki isimleri stn2'deki rakamlara göre dizip aralarına virgül koyarak bir stringe aktarmak
Yani stn2'de 0 hangi sırada ise o bulunup stn1'deki değer alınıp yanına virgül konulacak sonra stn2'deki 1 rakamı aranıp bulunacak ve stn1'deki karşılığı ilk bulunmuş değere eklenecek bu böyle devam edecek bunun döngüsünü kuramadım programımın başka yerinde ayar kaydederkende benzeri bir kod kullandım aşağıda onu veriyorum böylece kodlar elinizde kod yazmanıza pek gerek yok ihtiyaç duyacağınız kodların hepsi aşağıda var sadece buna uygun döngüyü yazmak lazım döngü nasıl olacak.
Aşağıda verdiğim kodda programımda bir datagridde bulunan sütunlardaki bilgileri satır satır okuyup bulduğu değerlerin aralarına virgül koyup bir ini dosyasına kaydediyor tabi sütunlara göre bilgileri ayrıp kaydediyor benim yazacağım kodda %90 aynı olacak en önemli farkı bu kodda düz bir şekilde okuma yapılıyor ve bilgiler kaydediliyor bana lazım olanda ise stn2'deki rakamlara göre okutup stn1'deki bilgileri aralarına virgül koyup dizilmiş olarak kaydetmek
Kod:
Public Sub x_FiltreDatagridKaydet()
Dim stn1Listesi As New System.Text.StringBuilder()
Dim stn2Listesi As New System.Text.StringBuilder()
Dim stn3Listesi As New System.Text.StringBuilder()
Dim stn4Listesi As New System.Text.StringBuilder()
Dim satıradedi As Integer = Me.DataGridView4.Rows.Count - 1
For index As Integer = 0 To satıradedi
Dim satırlar1 As String = Me.DataGridView4.Rows(index).Cells(0).Value.ToString()
Dim satırlar2 As String = Me.DataGridView4.Rows(index).Cells(1).Value.ToString()
Dim satırlar3 As String = Me.DataGridView4.Rows(index).Cells(2).Value.ToString()
Dim satırlar4 As String = Me.DataGridView4.Rows(index).Cells(3).Value.ToString()
stn1Listesi.Append(satırlar1.ToString & ",")
stn2Listesi.Append(satırlar2.ToString & ",")
stn3Listesi.Append(satırlar3.ToString & ",")
stn4Listesi.Append(satırlar4.ToString & ",")
Next
Dim isim, stn, yontem, gizli As String
Dim yazıadedi1 As Integer = stn1Listesi.ToString().Length - 1
Dim yazıadedi2 As Integer = stn2Listesi.ToString().Length - 1
Dim yazıadedi3 As Integer = stn3Listesi.ToString().Length - 1
Dim yazıadedi4 As Integer = stn4Listesi.ToString().Length - 1
isim = stn1Listesi.ToString().Remove(yazıadedi1, 1)
stn = stn2Listesi.ToString().Remove(yazıadedi2, 1)
yontem = stn3Listesi.ToString().Remove(yazıadedi3, 1)
gizli = stn4Listesi.ToString().Remove(yazıadedi4, 1)
inifile.Yaz("Filtre", "isim", isim)
inifile.Yaz("Filtre", "stn", stn)
inifile.Yaz("Filtre", "yontem", yontem)
inifile.Yaz("Filtre", "gizli", gizli)
End Sub