İpinUcu ~ 44 – WPF’te Style Kullanım Türleri


WPF’te Style’ların farklı farklı kullanım yöntemleri vardır:

1.) Resource Dictionary oluşturup tasarıya eklemek:

Tasarı (proje) üzerinde sağ tıklayın, Add, Resource Dictionary, Bir isim girin (ben başına rd koymayı tercih ediyorum). Oluşturduğumuz kaynak dosyayı her User Control ya da Window’da kullanabilmemiz için App.xaml doyasına geçip aşağıdaki gibi bir tanımlama yapıyoruz:

<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source=”rdNesneler.xaml” />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>

Source özelliğine tanımladığımız rdNesneler.xaml kaynak dosyası istediğimiz her Window ve User Control’de kullanabileceğimiz Style’ları tutacak. Bu xaml’ın içinde oluşturduğumuz her Style dosyasını (Elbette x:key değeri olmak zorunda) her yerde kullanabiliriz.

2.) Window ya da UserControl içerisinde oluşturup kullanmak:

Resource Dictionary gibi bu yöntem de her yerde kullanıma açıktır. RD’den farkı yalnızca oluşturulduğu sınıf içerisinde çağırılabilmesidir. Örneğin aşağıdaki gibi bir Button Sitilimiz olsun:

<Window.Resources>
<Style x:Key=”dugmeSitili” TargetType=”Button”>
<Setter Property=”Background” Value=”WhiteSmoke” />
<Setter Property=”FontStyle” Value=”Italic” />
<Setter Property=”Padding” Value=”8,4″ />
<Setter Property=”Margin” Value=”4″ />
<Setter Property=”FontFamily” Value=”Trebuchet MS”/>
</Style>
</Window.Resources>

<Grid>
<Button Style=”{StaticResource dugmeSitili}” Content=”Mehmet KAPLAN” Margin=”61,182,227,52″ />
<Button Style=”{StaticResource dugmeSitili}” Content=”Mehmet KAPLAN” Margin=”71,96,239,135″ />
</Grid>

Görüldüğü gibi Sitil özelliklerimiz Application.Resource yerine Window.Resource altında tanımlandı. Bu yüzden yalnızca bu Window altında çalışacaktır. Diğer önemli bir noktaysa her iki düğme için de aynı Sitil tanımlamasının yapılmış olmasıdır. Eğer istersek bu penceredeki tüm düğmeler için tek bir kere tanımlama yaparak da Sitil belirleyelebiliriz. Aşağıdaki XAML’ı inceleyelim:

<Window.Resources>
<Style TargetType=”Button”>
<Setter Property=”Control.Background” Value=”Blue”/>
<Setter Property=”Control.FontStyle” Value=”Italic”/>
</Style>
</Window.Resources>
<Grid>
<Button Content=”Mehmet KAPLAN” Margin=”61,182,227,52″ />
<Button  Content=”Mehmet KAPLAN” Margin=”71,96,239,135″ />
</Grid>

Kodlardan da anlaşılabileceği gibi Window.Resources altında bir kere tanımlanan Sitil, düğmelerde tek tek belirtilmeden uygulanmıştır. Bunun nedeni TargetType özelliğine Button değerinin atanmış olmasıdır. Aynı durum tüm diğer nesneler için de söz konusudur.

Haydi kolay gelsin.

Hakkında Mehmet KAPLAN
mehmet.kaplan@hotmail.com.tr https://mehmetkaplan.wordpress.com/mehmetkaplan/

One Response to İpinUcu ~ 44 – WPF’te Style Kullanım Türleri

  1. Geri bildirim: İpinUcu ~ 45 – WPF’te Style Nedir, Nasıl Kullanılır? « Mehmet KAPLAN

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Google+ fotoğrafı

Google+ hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Connecting to %s

%d blogcu bunu beğendi: