Makale Özeti

Bu makalemizde .Net Compact Framework 2.0 ile birlikte gelen yeni bir Mobil kontrolünü ; WebBrowser kontrolünü kullanarak sekmeli bir Mobil Internet Tarayıcısı uygulaması geliştireceğiz.

Makale

Mobil cihazlar üzerinde geliştirilen uygulamaların neredeyse tümünde mobil cihazların donanımsal ve fiziksel olarak yetersizliğinin izlerini rahatlıkla görebilmekteyiz. Küçük bir ekran, sınırlı bir görüş alanı, küçük bir klavye v.b. geliştirdiğimiz tüm mobil cihaz uygulamalarının geliştirilme süreci esnasında göz önünde bulundurmamız gereken etkenlerin başında gelmektedir. Bu noktada mobil cihaz kullanıcısını bu “küçük” fakat doğru kullanıldığında “fazlasıyla yeterli” olarak ifade edebileceğimiz cihaz ekranından fazla uzaklaştırmayacak ; daha anlaşılır bir dille “dallanıp budaklanmayacak” uygulamalar geliştirmemiz gerekmektedir. Geliştirecek olduğumuz uygulamanın ana ekranı üzerinde devasa butonların ve onlarca Form’ un olması yerine tümleşik, olabildiğince anlaşılır ve kolay kullanılabilir esnek uygulamalar geliştirmemiz gerekmektedir.

Bu amaca uygun olarak bu makalemizde kullanıcıların Mobil Cihazları üzerinden Internet erişimine ihtiyaç duydukları anda kullanabilecekleri, “yüzlerce” sayfayı aynı anda tek bir uygulama içerisinde görüntüleyebilecekleri kullanışlı bir Sekmeli Mobil Internet Tarayıcı uygulaması geliştireceğiz.

Bu makaledeki temel amacımız Mobil Cihazlar üzerinde geliştirecek olduğumuz tümleşik uygulamalarım kullanılabilirliği ne kadar arttırdığını ve kullanıcıları uygulamalanıza ne kadar bağladığını ifade etmektir. Ayrıca makalenin başında da ifade edildiği gibi .Net Compact Framework 2.0 ile birlikte gelen yeni bir kontrolü ; WebBrowser kontrolünü kullanarak böyle bir uygulamanın ne kadar kolay geliştirilebileceğini birlikte göreceğiz.

Bu noktadan sonra konunun daha rahat anlaşılabilmesi açısından örnek bir uygulama geliştirmek daha doğru olacaktır. İşe standart bir C# - Smart Device – Device Application projesi açarak başlıyoruz.

Bir sonraki adımda ise uygulamanın form tasarımını gerçekleştiriyoruz.

Form tasarımı ile ilgili bu noktada kısa açıklamalarda bulunmak konunun anlaşılabilmesi için daha doğru olacaktır.

Uygulama içerisindeki amacımız birbirlerinden ayrık pencerelerin aksine tümleşik bir yapıyı tek bir pencere içerisinden sağlayabilmektir. Bu noktada standart Windows Masaüstü uygulamalarından tanıdığımız bir kontrolü ; TabControl kontrolünü kullanarak uygulamamızın temel yapısını oluşturacağız. Kullanıcı uygulama ekranı üzerinde tanımlanan menü elemanlarına tıkladığı zaman bu TabControl kontrolü içerisinde içinde “WebBrowser” kontrolü bulunan yeni bir TabPage kontrolünü eklenmiş olarak çalışmaya devam edecektir.

Bu noktada amaca ulaşabilmek için şekildeki form tasarımını gerçekleştirerek uygulamamıza devam ediyoruz :

Kod ekranına şekildeki metotları yazarak işe devam ediyoruz :

Bu noktada uygulamamızın menü elemanlarına tıkladığımız zaman kullanacağımız iki adet metot tanımladık ; NewTab() ve GoToAddress(string HttpAddress).

Metotların içeriğine baktığımızda yapının çokta karmaşık olmadığı rahatlıkla görülebilmektedir. NewTab() metodu içerisinde yeni bir TabPage tanımlanıp içerisine bir WebBrowser kontrolü eklenmekte ; ve bir sonraki adımda ise bu TabPage TabControl kontrolününün TabPage koleksiyonu içerisine katılmaktadır. GoToAddress(string HttpAddress) metodunda ise ilk olarak TabControl kontrolü içerisinde aktif seçili bir sayfanın olup olmadığı ; var ise sayfanın içerisindeki WebBrowser’ ın belirtilen adrese gitmesi için gerekli metotlar çağırılmıştır. Bir sonraki adımda ise Menü elemanlarına tıkladığımız zaman nasıl bir yapı çalışacak bunun kodlarını tasarlayalım.

Sistem bu noktada çok basit olarak tasarlanmıştır. Kullanıcı yeni Tab menü elemanına tıkladığında NewTab() metodu çağırılmakta ; Go Address menü elemanına tıkladığında ise ilk olarak metin kutusuna girilen adresin http:// deseni ile başlayığ başlamadığını kontrol ettikten sonra internet adresimiz GoToAddress metoduna parametre olarak gönderilmektedir.

İşte bu kadar ! Uygulamamızı internet erişimi olan bir emülatör / cihaz üzerinde test ettiğimizde şekildeki sonuca ulaşmış olmalıyız ;

İlk olarak uygulamamız açıldığında New Tab seçeneği üzerinden yeni bir iç sayfa hazırlatıyoruz.

İç sayfamız hazır. Bir sonraki aşamada Go Address menü elemanına basarak seçili TabPage içerisindeki WebBrowser kontrolünün Metin Kutusu içerisinde yazılı olan adrese gitmesini tetikliyoruz.

Ve sonuç ! Bir sonraki aşamada hali hazırda açık olan uygulamamız içerisinde yeni bir iç sayfa daha hazırlatıyoruz. Ve Adres olarak http://www.microsoft.com’ u belirliyoruz.

Ve sonuç ! İki adet sayfa aynı anda açık olmasına rağmen birbirlerinden bağımsız olarak internet üzerinde gezinti yapılabilmektedir.

Bu makalemizde WebBrowser ve TabControl kontrollerini kullanarak Sekmeli bir Mobil Internet Tarayıcısı uygulaması geliştirdir. Başka bir makalede daha görüşmek üzere.

 


Ekin ÖZÇİÇEKÇİLER
Microsoft Certified Trainer
ekin.ozcicekciler@bilgeadam.com
MCP, MCAD.NET, MCSD.NET, MCSD.NET, MCTS, MCPD Ent.