Amaç ?           

Web Tasarım !!

İhtiyacınız web Sitesiyse Doğru Yerdesiniz

Devamı..

Android Uygulamalarımız!!

Android Uygulamalarımız için yorumlarınızı bekliyoruz.

Devamı..

BindingSource Kullanımı

Murat özçelik tarafından yazıldı. Aktif . Yayınlanma VB.net

BindingSource Kullanımı

BindingSource'  aslında ADO.NET'in bir üyesi ,yada bir parçası DEĞİLDİR, 'BindingSource ' , windows.form sınıfına aittir,

 Bu yeni BindingSource,ADO.NET 2.0 ve sonrası sürümlerde mevcuttur,(Microsoft ADO:.net 2.0 isimli kitaptan)"""
BindingSource ,diğer view tiplerine yani(currency manager,bindingcontext ve view lara) benzemesine rağmen,onların bütün özelliklerini kapsamakla kalmayıp  daha fazlasını yapabilen bir veri bağlama türüdür.
Bindingsource,kullandığı kaynağı ,kendi listesi(list) olarak görür ve bu "list"teki,navigasyonlara(ileri,geri,enson,ilk) ...gibi ve tüm
diğer row değişikliklerine ve listenin satır seçimlerine veya aktif hale gelmesine karşı duyarlıdır.

BindingSource "construction" methotları():
a-)--------------------------------------------------------------
                                     dim bs as BindingSource
                                     bs=new BindingSource
Şeklinde oluşturulup kaynak tanımlanabilir;(Örneğin bir dataset'i kaynak gösterelim)
                                     bs.datasource=DataSet
                                     bs.datamember="Tablo"
b-)-----BindingSource için kısa bir construct yöntemide  şudur;
                                    dim bs as new bindingsource(Dataset,"Tablo")'Tek satırda bitirdik.

BindingSource "Current" Methodu:
------------------------------------------------------------------
BindingSource' un current methodu; Üzerinde bulunulan mevcut satırı işaret eder,yani dahada açıklamak gerekirse,
o an ,hangi datarow aktifse,yada kendine liste olarak seçtiği kaynağın hangi satırı seçiliyse o satırı anlatır. Ör:
diyelimki bir gridviewı bir bindingsource a bağladık . 'gridview1.datasource=bs' dedik mesela, üzerinede tıklayıp bir satırı seçili hale getirdik, işte bu satırdaki dütun bilgilerini bindingsource ile kolaylıkla alabiliriz.
bs.current("sütun adı")------------bize hangi sütunu yazdıysak onun değerini döndürür.
sütunların indexlerini biliyorsak yani tablodaki sıralarını, indexleride kullanabiliriz:
bs.current(3)---gibi

BindingSource "Count" Methodu:
------------------------------------------------
bs.count------Bize tablodaki satır sayısını döndürür.(tabi bindingsourceumuz altta anlatılacağı gibi filtrelenmemişse, eğer filtrelenirse filtrelenmiş olan sayıyı döndürür ki dehşet güzel bir olaydır.)

BindingSource "AddNew" Methodu:
------------------------------------------------
Bu yöntem yeni bir satır eklemek için kullanılır;
bs.AddNew-----düzenlemeye hazır yeni bir satır.(satır henüz dataset üzerinde değildir)

BindingSource "EndEdit" Methodu:
------------------------------------------------
Bu yöntem,bindingsource un listesinde yapılan değişikliklerin dataset'e iletilip dataset bazında kaydedilmesini sağlar,satırla işimiz bittiğinde endedit kullanmak gerekir,

BindingSource "Filter" Methodu:
------------------------------------------------
Adındanda anlaşılabileceği gibi filtreleme yapar,
bs.filter="sütun1='ahmet' and sütun2=123"....gibi

BindingSource "Find" Methodu:
------------------------------------------------
Bu yöntemde ,arama ,bulma işlemlerini yapar,yapar ancak, Dikkat geriye dönen değer aradığımız değerin kendisi değil aradığımız bilginin bulunduğu satırın satır numarasıdır!!(integer tipinde bir değerdir)
bs.find("sütun adı",değer)--şeklinde kullanılır
ee şimdi geriye dönen değer satır numarasıysa ne işe yarayacak'' aşağıda 'index ' kullanımında ve "position" isimli yöntemlerde iki ayrı usulde bu satır numarasını bulmak anlatılmış olacak.

BindingSource 'ta Navigasyon(Gezinme işlemleri)
------------------------------------------------
(burada daha önce anlattığımız 'current' methodu geçerlidir,navigasyondan sonra artık 'currentımız' değişmiş olacaktır)bs.movefirst----ilk kayıta gider
bs.movelast----son kayıta gider
bs.movenext---bir sonraki satır
bs.moveprevious--bir önceki satır

BindingSource "Position" yöntemi
------------------------------------------------
posiziton yöntemi hem 'get' hemde 'set' özelliklidir yani bindingsource u istediğimiz satıra gönderebilir(Dikkat 'current methodu yine geçerli'), hemde bulunduğu satırı öğrenebiliriz,(integer tipinde bir değer döndürür)
bs.position=3---3.Satıra gider
dim a as integer=bs.position-----a değeri 3 olarak bize bulunduğu satır indexini döndürür.
----yukarıda bahsedilmiş olan find methodu işte burada işe yaramaktadır,nasılmı;
bs.position=bs.find("sütun adı",değer)----şeklinde kullanıldığı zaman artık current methoduyla bulmuş olduğumuz satırdan sadece aradığımız sütun değerlerini değil diğer tüm sütunlarında o satırdaki değerlerini alabiliriz

BindingSource'ta index kullanımı:
------------------------------------------------
bs(4)("yaşı")--bu örnek bize 4.satırdaki 'yaşı' isimli sütunun değerini döndürür.
yine yukarıda bahsetmiş olduğumuz find methodunun kullanım alanlarından biride burada ortaya çıkar:
Ör:dim a as string=bs(bs.find("sütun adı",değer)).tostring --bu ifade istediğimiz ifadeyi arayıp ,bize döndüren tek satırlık bir ifadedir .

BindingSource "RemoveCurrent" Yöntemi:
------------------------------------------------
buradada üzerinde bulunulan mevcut satırı silebiliyoruz(Bellekten)

BindingSource "RemoveFilter" Yöntemi:
------------------------------------------------
Daha önce "Filter" yöntemi ile filtrelemiş olduğumuz kayıttan tüm filtreleri temizleyip listesini orijinal hale döndürür.

BindingSource "Sort" ve "RemoveSort" Yöntemleri:
------------------------------------------------
sort sıralama yapar ve removesort bu sıralamyı iptal eder:
bs.sort="sütunadı desc"---sıralamış olduk örneğin.
bs.removesort---güle güle sıralama.

alıntı.




Yorum ekle

Yorum Ekleyin.


Güvenlik kodu
Yenile

16 ziyaretçi ve 0 üye çevrimiçi