Bu makalemizde DataGridView1 nesnesinin 1.sütunundaki kayıtlara göre TextBox da arama yaptırarak, bulunan kayıtları DataGridView2 nesnesinde göstereceğiz.
Formunuza 2 adet DataGridView1, 1 adet TextBox ve Button ekleyin. (Şekil 1)
Form1.vb
Imports System
Imports System.Data
Imports System.Data.OleDb
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim baglan As OleDb.OleDbConnection = New OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Northwind.mdb;")
Dim da As OleDbDataAdapter = New OleDbDataAdapter("Select CustomerID,CompanyName,ContactName,Address,City From Customers", baglan)
Dim ds As DataSet = New DataSet()
da.Fill(ds, "Customers")
DataGridView1.DataSource = ds.Tables(0)
'DataGridViewdaki sutun sayısını belirliyoruz
DataGridView2.ColumnCount = 5
'DataGridViewdaki sutunlara isim veriyoruz.
With DataGridView2
.Columns(0).Name = "CustomerID"
.Columns(1).Name = "CompanyName"
.Columns(2).Name = "ContactName"
.Columns(3).Name = "Address"
.Columns(4).Name = "City"
End With
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
DataGridView2.Rows.Clear()
'Türkçe karakterler ingilizce karakterlere çeviriyoruz.
TextBox1.Text = TextBox1.Text.Replace("i", "I")
TextBox1.Text = TextBox1.Text.Replace("ö", "O")
TextBox1.Text = TextBox1.Text.Replace("ş", "S")
TextBox1.Text = TextBox1.Text.Replace("ğ", "G")
'Textbox a girilen karakterleri büyütüyoruz.
TextBox1.Text = TextBox1.Text.ToUpper()
Dim i As Integer, j As Integer
For i = 0 To DataGridView2.Rows.Count - 1
DataGridView2.Item(0, i).Value = ""
Next
For i = 0 To DataGridView1.Rows.Count - 1
'Textbox a girilen stringi DGridView1 de aratıp DGridView2
'de gösterimini sağlıyoruz.
'Arama 1. sütuna göre oluyor.
If DataGridView1.Item(0, i).Value Like TextBox1.Text & "*" Then
DataGridView2.Rows.Add()
DataGridView2.Item(0, j).Value = DataGridView1.Item(0, i).Value
DataGridView2.Item(1, j).Value = DataGridView1.Item(1, i).Value
DataGridView2.Item(2, j).Value = DataGridView1.Item(2, i).Value
DataGridView2.Item(3, j).Value = DataGridView1.Item(3, i).Value
DataGridView2.Item(4, j).Value = DataGridView1.Item(4, i).Value
j = j + 1
End If
Next
If DataGridView2.Rows.Count - 1 = 0 Then
MsgBox("Aradığınız Kayıt Bulunamadı...")
End If
End Sub
End Class
0 comments:
Yorum Gönder