MehmetX.com

Windows Phone 7 SMS Uygulamasi

2.07.2011 16:00:00 | Okunma Sayisi : 8951 | Yorum Sayisi : 2

Visual Studio 2010' da yeni bir Windows Phone Application açalım. Visual Studio 2010' da yeni bir proje açmak ve yeni proje ekranı hakkında detaylı bilgi için Windows Phone 7 ile ilk Uygulama makalemi okuyabilirsiniz. Projeye isimi olarak Windows_Phone_7_SMS_Uygulamasi verebilirsiniz. Toolbox' tan bir adet Button kontolü ekleyelim. Butonun Content özelliğine SMS Ekranı Aç yazalım. Butonun click event' ini açıp kodları aşağıdaki gibi düzenleyelim. Tabii ki öncesinde Microsoft.Phone.Tasks namespace' ini yukarıya ekleyelim.

        private void button1_Click(object sender, RoutedEventArgs e)
        {
            PhoneNumberChooserTask telSecici = new PhoneNumberChooserTask();
            telSecici.Completed += new EventHandler<PhoneNumberResult>(telSecici_Completed);
            telSecici.Show();
        }
 
        void telSecici_Completed(object sender, PhoneNumberResult e)
        {
            SmsComposeTask sms = new SmsComposeTask();
            sms.To = e.PhoneNumber;
            sms.Show();
        }

button1 click içerisinde instance' ını aldığımız (örnek yarattığımız) PhoneNumberChooserTask, isminden de anlaşılacağı gibi telefonun kontak listesinden telefon numarası seçmemizi sağlayacak bir Chooser. Launchers ve Choosers makalemde bahsettiğim gibi Choosers Task' leri geriye veri döndürürler. PhoneNumberChooserTask' in geriye döndüreceği veri de kontak listesinden seçilen kişinin telefon numarasıdır. Yani buton tıklandığında karşımıza kontak listesi gelecek, Listeden bir kişi seçtiğimiz zaman PhoneNumberChooserTask' in Completed event' i tetiklenecek ve telSecici_Completed metodunu çağıracak. Bu metot içerisinde yazmış olduğumuz e.PhoneNumber, seçilen kişinin telefon numarasını verecek. (emülator içerisinde 5 tane örnek kişi vardır).

resim yuklenemedi

telSecici_Completed metodu içerisinde instance' ını aldığımız SmsComposeTask class' ı mesajlaşma ekranını açacak olan Launcher' dır. Launcher' lar için geriye bir veri göndermez demiştik bu yüzden SmsComposeTask' in Completed event' i yoktur. sms ismini verdiğimiz SmsComposeTask nesnemizin To özelliği, sms gönderilecek kişinin telefon numarasını belirtir (hem GET hem de SET edilebilen bir özelliktir). To özelliğine PhoneNumberChooserTask' ten dönen telefon numarasını verdik (e.PhoneNumber) ve sms nesnesinin Show metodu ile mesajlaşma ekranını gösterdik. Aşağıdaki resimde 1 numaralı kırmızı çerçeve içerisinde, kontak listesinden seçtiğimiz kişinin telefon numarası görünmektedir, yani sms' in gideceği telefon numarası. Sms' i göndermek için herhangi bir kod yazmamıza gerek yok, açılan mesaşlaşma ekranındaki gönder butonu (aşağıdaki resimde 2 numaralı kırmızı çerçeve içerisindeki) tıkladığımız zaman sms gönderilecektir.

resim yuklenemedi

SMS' i gönderdikten sonra aşağıdaki gibi bir görüntü olacaktır.

resim yuklenemedi

Örnek uygulamanın kaynak kodlarını buradan indirebilirsiniz.


2 Yorum

Orhan Veli YILDIZ 2.07.2011 20:00:42
Harika makale. Bilgine sağlık.
ali 21.09.2011 08:51:26
Makalelerinizi bir kere okumak yapıyı anlamaya yetiyor ve örnekleriniz hatasız çalışıyor. Ayrıntılı ve akıcı anlatımınız için teşekkür ederim.



page-top