Makale Özeti

Mobil sistemler için tasarlamayı düşündüğünüz uygulamamız dosya ve klasör yönetimiyle birebir alakalı ise .NET 2.0 CF le birlikte hayatımıza giren DocumentList kontrolü tam olarak bu iş içindir. Bu kontrol sayesinde ilgili root klasör içerisinde yer alan bir çok dosya ve klasör üzerinde standart dosya ve klasör işlemlerinin yanısıra kızılötesi gibi işlemleride gerçekleştirmek pekala mümkündür..

Makale

            Pocket Pc 2003 ve Üstü Sistemler için Documentlist Kontrolü

 

            Mobil sistemler için tasarlamayı düşündüğünüz uygulamamız dosya ve klasör yönetimiyle birebir alakalı ise .NET 2.0 CF le birlikte hayatımıza giren DocumentList kontrolü tam olarak bu iş içindir.

Bu kontrol sayesinde ilgili root klasör içerisinde yer alan bir çok dosya ve klasör üzerinde standart dosya ve klasör işlemlerinin yanısıra kızılötesi gibi işlemleride gerçekleştirmek pekala mümkündür..

 

            Bu kontrol ile yapabileceklerimize biraz daha net değinecek olursak ;

 

            . Dosya ve klasörlerin seçimi , kopyalanması ,  silinmesi  ve adının değiştirilmesi

            . Dosya Adı , tarih ve boyuta göre sıralama yapabilmek

            . Dosyalarımızın kızılötesi teknolojisi sayesinde başka aygıtlara gönderilebilmesinin sağlanması.

            …

 

 

            İsterseniz uygulama ile bu kontrolü örneklendirmeden hemen önce içerdiği bazi property ve event’ların ne işe yaradığından bahsedelim..

 

            Filter : Bu özelik yardımı ile ulaşılacak özel veri tipleri sisteme belirtilmiş olunur.

            FilterIndex : Öncelikle gösterilmesi istenen dosya tiplerinin sisteme belirtilmesini sağlayan özelliktir.

            SelectedDirectory  : İlk açılışta varsayılan klasörün belirtildiği özelliktir..(Initial Directory olarak da düşünülebilir )

            DocumentActivated : Bu özellik dahilinde belirtilen dökümanın aktif olduğunda çalışması istenen kodların belirtildiği event’dır.

            DeletingDocument : Doküman silindiği zaman çalışan olaydır.

            SelectedDirectoryChanged : Belkide en kullanışlı olan eventlardan biridir kanımca.Adından da anlaşılabildiği gibi klasör değişikliği olduğunda çalışan olaydır.

 

            Şimdi gelelim yukarıda açıklamaya çalıştığımız kontrolümüzü  bir mobile uygulama içerisinde nasıl kullanılabileceğine ışık tutmaya..Bu uygulamaya başlamadan önce DocumentList Kontrolümüzün ToolBox içerisinde nerde olduğuna  bir göz atalım..

                                                          

                                                                                                         

 

            Evet şimdi aşağıda ki gibi bir ekran tasarlıyoruz..

 

                                                                                                         

 

            Ve şimdide lafı çok uzatmadan direkt olarak kodlara geçelim..

 

 

 

        private void frmDocumentList_Load(object sender,EventArgs e)

        {

            docList.Parent  = this;  // kullandığımız kontrolün parent’ının kim olduğunu set ediyoruz..

            docList.DocumentActivated += new Microsoft.WindowsCE.Forms.DocumentListEventHandler(docList_DocumentActivated);  // nesnenin ilgili event’ını tıklayıp yazmak yerine bu şekilde de yazabiliriz..

            docList.SelectedDirectoryChanged +=new EventHandler(docList_SelectedDirectoryChanged);

            docList.DeletingDocument +=new Microsoft.WindowsCE.Forms.DocumentListEventHandler(docList_DeletingDocument);

            docList.FilterIndex = 0;  // ilk

            docList.SelectedDirectory = "My Pictures";

        }

 

        void docList_DeletingDocument(object sender,Microsoft.WindowsCE.Forms.DocumentListEventArgs e)

        {

            lblAciklama.Text = "Silinen -- > "+e.Path.ToString();  // adında pekala anlaşılabileceği gibi tamamen  silinen dosya veya klasörün bilgisini labelimıza yansıtıyor..

        }

 

        void docList_SelectedDirectoryChanged(object sender,EventArgs e)

        {

            lblAciklama.Text = "Dizin -- > "+ docList.SelectedDirectory;  // Dizinle ilgili bilgileri alıyoruz..

        }

 

        void docList_DocumentActivated(object sender,Microsoft.WindowsCE.Forms.DocumentListEventArgs e)

        {

            lblAciklama.Text = "Seçilen -- >"+e.Path.ToString(); // ve seçili olan dosya veya dizinin bilgisini alıyoruz..

        }

 

            Örnekte bir şey dikkatinizi çekmiş olabilir o da metodlara geçilen argüman tipleri.. Microsoft.WindowsCE.Forms.DocumentListEventArgs gibi uzun uzadıya görmek istemezsek şayet bu durumda  kod ekranının en başına  using Microsoft.WindowsCE.Forms ; yazmayı unutmuyoruz J

 

            Uygulamamızı ilk çalıştırdığımızda aşağıda kine benzer bir görüntü elde ederiz..Açılışta SelectedDirectory ‘yi siz istediğiniz gibi ayarlayabilirsiniz..

 

                                                                                                         

 

           

            Name yazan kısmın hemen yanında  ki aşağı okuna tıklayarak document listesinde yer alan dosya ve klasörlerler ile ilgili sıralama tipini seçebiliriz..

 

                                                                                                         

 

            Herhangi bir dosya seçiliyken Stylus ( Pocket Pc’lerin yanında gelen ve dokunmatik kullanım yanında daha performanslı bir şekilde mobil cihazımızı kullanmaya yarayan kalem benzeri nesnenin genel adı.) ile sol bir süre basılı tuttuğumuz da ( emulator üzerinden işlem yapıyorsanız aynı işlevi mouse’ın sol tuşunu 3-4 sn basılı tutunuz..))ile basılı tuttuğumuzda açılan popup menü üzerinden e-mail , kızılötesi gibi işlemleri gerçekleştirebilirsiniz..

 

                                                                                                         

 

             

           

  • Kodları İndirmek İçin Tıklayınız...
  •  

                Bir sonraki makalemizde WebBrowser kontrölü ile kendimize ufak bir internet browser’ının nasıl yapılabileceğini irdeleyeceğiz..

     

    Şimdilik bu kadar..Takıldığınız bir nokta olursa eralp.erat@savyazilim.com adresinden bana ulaşabilirsiniz..

     

    Unutmayalım bilgi paylaşıldıkca değerlidir..

     

    Eralp Erat

    Mcp, Mcad.NET , Mcsd.NET

    HIMS

    www.eralperat.com

    Proje Kaynak Kodları