Yazılımcının Günlüğü | YazilimGunlugu.Com
Arama
Makale Kategorileri
Üye Girişi
Şuanki online üyeler()
Aktif üye bulunmamaktadır.


Disconnect Databinding

Yazar: ..

Kategori: ADO.NET & Entity Framework

Eklenme Tarihi: 25.05.2007 07:09:43

Bu makalemde DataGridde seçtiğimiz kaydın verilerinin TextBoxlara doldurulmasını sağlıyacağız.

Bu makalemde DataGridde seçtiğimiz kaydın verilerinin TextBoxlara doldurulmasını sağlıyacağız. Bunun için 1 adet DataGrid , kaç adet alan listeleteceksek ise o kadar textbox’a ,bağlantımızı kurmak için bir adet DataAdapter, 1 adet Connection nesnesi verileri tutmak için ve 1 adet DataSet’e ihtiyacımız vardır.

Şimdi aşağıdaki Form’da olduğu gibi DataGrid ve diğer nesenelerimizi dizelim

Nesnelerimizi Aşağıdaki gibi isimlendirelim.

Nesne

Özellik

Textbox1

Name

txtFirstName

Textbox2

Name

txtLastName

Textbox3

Name

txtTitle

Şimdi sırada DataAdapter, Connection ve DataSet eklemeye geldi ;

Bu üç nesnemizi editörümüzdeki Toolbox’ın içindeki data bölümünde bulabiliriz. ToolBox üzerinden SqlDataAdapter sürükleyip formumuzun üzerine bırakıyoruz.ve aşağıdaki resimdeki gibi bir ekran açılıyor;

Buradan Next butonuna tıklıyoruz karşımıza database ile bağlantı kuracağımız bir ekran çıkıyor ;

Buradan new connection yazısına tıklıyoruz karşımıza database’e ulaşmak için gerekli bilgilerin girileceği ekran geliyor, burada biz sunucu adı bölümüne (nokta ) işareti koyuyoruz bu işaretin anlamı local’daki database ulaşmak içindir. 2.bölümdeki windows nt tümleşik güvenliğini kullan burayı işaretliyoruz (burada bunu işaretlediğimizde windows authentication ayarları ile bağlanıyor) daha sonra 3.bölümde verileri çekeceğimiz database adını seçiyoruz listeden database adımız northwind daha sonra bağlantıyı sına bölümünü tıklıyoruz bağlantımızın başarılı olduğuna dair bir mesaj alıcaz. Bu mesajı aldıktan sonra tamam’ı tıklıyoruz ve devam ediyoruz next butonunu tıklıyoruz.

Karşımıza sorgu tipini seçeceğimiz ekran geliyor buradan USE SQL STATEMENTS bölümünü seçiyoruz ve next butonuna tıklıyoruz.CREATE NEW STORED PROCEDURES Bu seçenek yeni bir store procedure eklemek için kullanılır. USE EXİSTİNG STORED PROCEDURES Bu seçenek var olan bir store procedure’ü eklemek için kullanılır.Daha sonra karşımıza çıkan ekranda query builder butonuna tıklayıp o ekrandan tablo adı üzerinde employees tablosuna çift tıklayıp tabloyu ekliyoruz, daha sonra eklediğimiz employees tablosundaki hangi alanların sorgusunu yapacaksak onları seçip (employeeID, Firstname, Lastname,Title) OK butonuna tıklıyoruz.

Sonra Next butonuna tıklıyoruz ve en sonunda finish butonuna tıklıyoruz. Formun altında 1 adet SqlDataAdapter ve SqlConnection nesnelerinin eklendiğini göreceğiz.

Daha sonra SqlDataAdapter nesnemizin üzerinde Sağ Tuş GenerateDataSet’e tıklıyoruz.

Burada Ok butonuna tıkladığımızda DataSet’imiz hazır hale gelicektir.

DataGrid nesnemizin özelliklerinde DataSource bölümünü Dataset11 olarak belirtiyoruz

Daha sonra DataMember bölümünde’de Employees olarak belirtiyoruz.

Datagrid nesnemizin ReadOnly özelliğini TRUE yapmayı unutmayınız.Bu özelliği TRUE yapmazsak yeni bir kayıt eklemek için satır açacaktır ve o kayıt’ı bulamazsa program çatlayacaktır.Ve son olarak’da TOOLS adında birtane class oluşturuyoruz bu oluşturacağımız class bizim datagrid nesnemizde aşağı yukarı hareket ederek içerisindeki verileri seçtiğimizde programımızın çatlamasını engelleyecek’tir.Rakam ve Yazıların Kontrolünü Bu oluşturduğumuz Class ile yapacağız.

Class’ın içine aşağıdaki Kodları Yazıyoruz ;

Public Class Tools

Public Shared Function YaziKontrol(ByVal Deger As Object) As String

If IsDBNull(Deger) Then

Return ""

Else

Return Deger

End If

End Function

Public Shared Function RakamKontrol(ByVal Deger As Object) As Decimal

If IsDBNull(Deger) Then

Return 0

Else

Return Deger

End If

End Function

End Class

Şimdi artık biraz kod Yazma zamanı geldi ;

Me.SqlDataAdapter1.Fill(Me.Ds1) “Bu kod’u Form’un Load kısmına yazıyoruz çünkü bu kod bizim datagrid’imizi dolduracak olan kod’dur.”

Şimdi ise datagrid nesnemize çift tıklıyoruz ve kod bölümündeki event’lardan CURRENTCELLCHANGED isimli event’ı seçiyoruz.Bu event datagrid’deki veriler arasında dolaştığımızda değişiklikleri algılayarak verilerin textbox’larda görünmelerini sağlayacaktır.

Private Sub DataGrid1_CurrentCellChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DataGrid1.CurrentCellChanged

Dim Index As Integer = Me.DataGrid1.CurrentRowIndex

Me.txtFirstName.Text = Tools.YaziKontrol(Me.Ds1.Employees(Index).Item("FirstName"))

Me.txtLastName.Text = Tools.YaziKontrol(Me.Ds1.Employees(Index).Item("LastName"))

Me.txtTitle.Text = Tools.YaziKontrol(Me.Ds1.Employees(Index).Item("Title"))

End Sub

Ve programımızı çalıştırıyoruz Datagrid nesnemizin içindeki verilerin üzerine tıklıyoruz ve textboxlarımızda bu verilerimizin yazdığını görüyoruz.

İşte DataBinding Bu arkadaşlar

Yeni makalemizde tekrar görüşmek üzere hoşçakalın.

MUSTAFA SAYGI

mustafasaygi@yahoo.com

Yazar Hakkında Yorum Yok Yorum Yaz Yazara ait diğer Makaleler
Tema
Anket
ASP.NET MVC'yi Projeleriniz de kullandınız mı?


En Çok Okunan Makaleler
En Son Eklenen Makaleler
Soru Merkezinde Bekleyenler
Ana Sayfa | Hakkımızda | Editörler | Yazarlar | RSS RSS | İletişim
Yazılım Günlüğü 2007-2009 © Tüm Hakları Saklıdır.