Vatansever
Asistan
- Katılım
- 23 Ağustos 2007
- Mesajlar
- 405
- Reaksiyon puanı
- 1
- Puanları
- 18
Bir .mdb access dosyasında SIRA BASLIK NOTLAR sütunları var ben bunu bir tablo oluşturdum ve dataset'ten çektiğim verileri bu datatable'ye doldurdum ve bu datatable'deki verilerden BASLIK sütunundaki bilgileride Listbox içine aktardım sorunum şu ListBox içinde bir seçim yaptığımda BASLIK sütunundaki bu seçimin NOTLAR sütunundaki karşılığının TextBox içinde görüntülenmesini istiyorum bunu nasıl yapabilirim?
Şimdi diyebilirsiniz doğrudan datasetten yükle diye evet datasetten bu iş çok kolay oluyor ama o zaman listbox içindeki değerler üzerinde işlem yapılamıyor (salt okunur oluyor) DataTable kullanarak ListBox doldurulduğunda her işlem yapılabiliyor bu nedenle DataTable kullandım.
	
	
	
		
			
			Şimdi diyebilirsiniz doğrudan datasetten yükle diye evet datasetten bu iş çok kolay oluyor ama o zaman listbox içindeki değerler üzerinde işlem yapılamıyor (salt okunur oluyor) DataTable kullanarak ListBox doldurulduğunda her işlem yapılabiliyor bu nedenle DataTable kullandım.
		Kod:
	
	Imports System.Data.OleDb
Public Class Form1
    Dim dt As New DataTable
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Me.ListBox1.Sorted = True
        Dim sutun(0) As DataColumn
        Dim baglantikodu As String = _
            "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|Bilgi.mdb;Persist Security Info=True;Jet OLEDB:Database Password=##"
        Dim baglan As OleDbConnection
        Dim da As OleDbDataAdapter
        Try
            baglan = New OleDbConnection(baglantikodu)
            da = New OleDbDataAdapter("Select * from BilgiBankasi", baglan)
            dt.Clear()
            da.Fill(dt)
            sutun(0) = dt.Columns("SIRA")
            dt.PrimaryKey = sutun
            baglan.Close()
  
            Me.ListBox1.DisplayMember = "BASLIK"
            Me.ListBox1.ValueMember = "SIRA"
            Me.TextBox1.DataBindings.Clear()
            Dim temp As String = Nothing
            For i As Integer = 0 To dt.Rows.Count - 1
                temp = dt.Rows(i)(1).ToString()
                ListBox1.Items.Add(temp)
            Next
        Catch ex As Exception
            MsgBox(ex.Message)
        End Try
    End Sub
    Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged
        ' İŞTE DÜZGÜN ÇALIŞMAYAN KOD BURDA ALTTAKİ KOD LİSTBOX'TA TIKLADIĞIM SEÇENEĞİN 
        ' NOTLAR SÜTUNUNDAKİ BİLGİSİNİN TEXTBOX'DA GÖRÜNTÜLENMESİNİ İSTİYORUM VE MÜMKÜNSE
        ' YAPILAN SEÇİMİN İNDEX NUMARASINIDA İSTİYORUM BAŞKA YERLERDE KULLANMAK İÇİN LAZIM OLACAK
        If ListBox1.SelectedIndex > -1 Then
            Dim index_numarasi As Integer = Convert.ToInt32(dt.Rows(ListBox1.SelectedIndex)(0))
            Dim Karsiligi As String = Convert.ToString(dt.Rows(ListBox1.SelectedIndex)(2))
            Me.TextBox1.Text = Karsiligi
        End If
    End Sub
End Class 
					
				 
 
		 
 
		 
 
		