Show | Engin Polat\'ın Windows 8 , Windows Phone 8 ve C# içerikli programcılık sitesi

Arşiv

Etiketlenen yazılar show

Universal App içerisinden WiFi bağlantısını açıp/kapatmak

16 February 2015 1 yorum

Aslında uygulama içerisinde WiFi bağlantısını açıp/kapatamayız. Fakat WiFi bağlantısını açıp/kapatabilecek sistem ayarları ekranını açabiliriz.

Bunun için basitçe;

yeterlidir.

private void btnWiFiAcKapat_Click(object sender, RoutedEventArgs e)
{
	var connectionSettingsTask = new ConnectionSettingsTask();
	connectionSettingsTask.ConnectionSettingsType = ConnectionSettingsType.WiFi;
	connectionSettingsTask.Show();
}

Windows Phone 8 uygulamasında çekilen resmi crop ettirmek

05 December 2014 Yorum yapılmamış

Geçtiğimiz aylarda bir etkinlikle göstermek için geliştirdiğim demo uygulamasında kamera aracılığıyla resim çekmem gerekti. Fakat geliştirdiğim uygulama, çekilen resmin belli bir en x boy oranında olmasını gerektiriyordu.

Kamera aracılığıyla çekilen resmin istediğim en x boy oranına göre crop edilmesini ve uygulamama crop edilmiş halinin verilmesini sağlamalıydım.

Gayet basit bir şekilde aşağıdaki kod parçası aracılığıyla bunu sağlayabildim;

private void PickPhotoClick(object sender, RoutedEventArgs e)
{
	var _photoChooserTask = new PhotoChooserTask();
	_photoChooserTask.PixelWidth = 600;
	_photoChooserTask.PixelHeight = 300;
	_photoChooserTask.Completed += _photoChooserTaskCompleted;
	_photoChooserTask.Show();
}

Gördüğünüz gibi sadece PhotoChooserTask tipindeki değişkenin PixelWidth ve PixelHeight özelliklerine istediğim en x boy oranlarını atamam yeterli oldu.

Windows 8 uygulamasında Toast Notification göstermek

19 November 2014 Yorum yapılmamış

Windows 8 için geliştirdiğiniz uygulamada kolayca toast notification gösterebilmek için yapmanız gerekenler aslında çok basit.

Öncelikle Windows.UI.Notifications namespace‘inde yer alan ToastNotificationManager sınıfının static olan GetTemplateContent() method’unu ToastTemplateType enum‘ından bir değer ile çağırıyoruz ve geri dönen XmlDocument tipindeki cevabı bir değişkende saklıyoruz;

var template = ToastNotificationManager.GetTemplateContent(ToastTemplateType.ToastText01);

GetTemplateContent() methodunu ToastTemplateType.ToastText01 parametresi ile çağırdığımızda aşağıdaki cevabı alıyoruz;

<toast>
	<visual>
		<binding template="ToastText01">
			<text id="1"></text>
		</binding>  
	</visual>
</toast>

text isimli element’i bulup, içine toast notification‘da göstermek istediğimiz metni yazıyoruz;

var elements = template.GetElementsByTagName("text");
elements[0].AppendChild(template.CreateTextNode("çok önemli mesaj!"));

Artık yapmamız gereken elimizdeki template değişkenini kullanarak yeni bir ToastNotification nesnesi oluşturmak;

var toast = new ToastNotification(template);

Son olarak ToastNotificationManager sınıfının static CreateToastNotifier() methodunu ve gene static olan Show() methodunu çağırmamız yeterli;

ToastNotificationManager.CreateToastNotifier().Show(toast);

ToastTemplateType enum‘ının diğer değerleri ve metin dışında resim de içerebilen template’lerinin listesi için MSDN‘deki The toast template catalog sayfasına bakabilirsiniz.

Windows Phone 8 uygulamasına Network Connection ayarları sayfası eklemek

14 February 2013 Yorum yapılmamış

Windows Phone 8 uygulamanıza Network Connection ayarları sayfalarını (örneğin; Airplane, Bluetooth, Cellular, WiFi) açan butonlar/linkler mi eklemek istiyorsunuz?

Bu yazıda ilgili ayarlar ekranlarını nasıl açacağımıza bakacağız.

Kullanmaya başlamadan önce Microsoft.Phone.Tasks namespace‘inde yeralan ConnectionSettingsTask sınıfını inceleyelim;

namespace Microsoft.Phone.Tasks
{
	public sealed class ConnectionSettingsTask
	{
		public ConnectionSettingsTask();
		public ConnectionSettingsType ConnectionSettingsType { get; set; }
		public void Show();
	}

	public enum ConnectionSettingsType
	{
		WiFi = 0,
		Bluetooth = 1,
		Cellular = 2,
		AirplaneMode = 3,
	}
}

Gördüğünüz gibi sealed anahtar kelimesi ile kalıtıma kapatılmış sınıf‘ın constructor haricinde ConnectionSettingsType tipinde ConnectionSettingsType isminde bir property’si, Show isminde bir method‘u bulunmakta.

ConnectionSettingsType enum’ı 4 adet değer içermektedir; WiFi, Bluetooth, Cellular ve AirplaneMode

Uygulama içerisinden ilgili ayarlar ekranını açmak için, örneğin bir buton‘un veya bir hyperlink‘in Click event‘ine aşağıdaki kodları yazmak lazım;

WiFi ayarlar ekranı açmak için;

ConnectionSettingsTask task = new ConnectionSettingsTask();
task.ConnectionSettingsType = ConnectionSettingsType.WiFi;
task.Show();

Bluetooth ayarlar ekranını açmak için;

ConnectionSettingsTask task = new ConnectionSettingsTask();
task.ConnectionSettingsType = ConnectionSettingsType.Bluetooth;
task.Show();

Cellular ayarlar ekranını açmak için;

ConnectionSettingsTask task = new ConnectionSettingsTask();
task.ConnectionSettingsType = ConnectionSettingsType.Cellular;
task.Show();

AirplaneMode ayarlar ekranını açmak için;

ConnectionSettingsTask task = new ConnectionSettingsTask();
task.ConnectionSettingsType = ConnectionSettingsType.AirplaneMode;
task.Show();