Hem WPF e minik bir başlangıç yapmış olmak hem de Web in dışında bir ortamda AutoComplete TextBox özelliğini görmek amacıyla basit bir uygulama yapalım.
Öncelikle Visual Studio 2010 da yeni bir WPF projesi açalım ve sonra da bir TextBox ve bir ListBox ekleyelim.
Benim ekran görüntüm şu şekilde oldu.
Uygulamamızda, bir .txt dosyada bulunan kişi isimlerini textBox a autocomplete olarak getireceğiz. Bu nedenle uygulama ilk çalıştığında , bu txt dosyası içindeki isimleri bir List e alıp saklayalım.(Dileyenler burada cache de kullanabilir ama ben kullanmadım). Txt dosyanın ismini App.Config dosyamızdan okuyalım ki ileride olabilecek olası bir değişiklikte koda müdahale etmeden yolumuza devam edebilelim.Bu yüzden projeye Add NewItem diyerek yeni bir application configuration file ekliyorum ve içine de dosya ismimi tutacak olan key-value pair değerlerini giriyorum.
Uygulama ilk açıldığında çalışacak kodlar şu şekilde oldu ;
Reflection ile exe nin çalıştığı path i alıp daha sonra config den okuduğumuz dosya ismini bu lokasyon bilgisine ekleyerek, okuyacağımız dosyanın tam path ini StreamReader a veriyoruz. Burada Encoding 1254 e dikkat, Türkçe isimlerde problem çıkarmaması açısından , StreamReader a 1254 kodlu Encoding ile açmasını söylüyoruz. Son olarak da autocomplete yapacak textboxumuza bir event tanımlıyoruz.
Bu olayda çalışacak kodlar da şöyle :
Görüldüğü üzere çok basit bir mantıkla, autocomplete textboxa a girilen değeri, txt dosyamızdan okuduğumuz List içinde arıyoruz, eğer varsa ListBox ta bunları gösteriyoruz.
Son olarak da, autocomplete textbox a suggest edilen (önerilen) değerlerden biri seçildiğinde olması gereken olaylar için, ListBox a da bir olay tanımlıyoruz.
F5 e bastığımızda şu şekilde çalışan bir uygulama görebiliyor olmalıyız.
Kodların tamamını da aşağıdan indirebilirsiniz. WPF tabi ki bu kadar değil, sadece WPF kullanarak uygulama geliştirmeye bir giriş olması açısından faydalı olur umarım.
Remember Me
© Copyright 2009, Süleyman PETEK