This article has been localized into Turkish by the community.
Merhaba Veri Bağlama Dünyası!
Bu öğreticiye başlarken nasıl klasik "Merhaba Dünya!" örneğiyle başladıysak, WPF'te veri bağlamanın ne kadar kolay yapıldığını gösteren bir "Merhaba Veri Bağlama Dünyası!" uygulaması göstereceğiz. Hadi hemen içine dalalım, sonrasında her şeyi açıklayacağım :
<Window x:Class="WpfTutorialSamples.DataBinding.HelloBoundWorldSample"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="HelloBoundWorldSample" Height="110" Width="280">
<StackPanel Margin="10">
<TextBox Name="txtValue" />
<WrapPanel Margin="0,10">
<TextBlock Text="Value: " FontWeight="Bold" />
<TextBlock Text="{Binding Path=Text, ElementName=txtValue}" />
</WrapPanel>
</StackPanel>
</Window>
Bu basit örnek bir TextBlock değerinin bir TextBox kontrolün Text özelliği ile eşleştirilmesini gösteriyor. Ekran görüntüsünde gördüğünüz gibi TextBox kontrolüne yazı girildikçe TextBlock içeriği otomatik olarak güncelleniyor. Veri bağlama olmasaydı TextBox içeriğinin değişmesini işleyen bir olay işleyici ile TextBlock içeriğini güncellemek için kod yazmamız gerekecekti. Fakat veri bağlama ile bu bağlantı sadece görsel kodunda kolayca yapılıyor.
Veri Bağlamanın deyim yapısı
Tüm sihir XAML işaretleme eklentilerinden birini süslü parantezler arasına koymakta. Veri bağlama için bize Text özelliği veri bağlantısını belirtme imkanı veren Binding eklentisini kullanıyoruz. En basit şekliyle bir veri bağlam şöyle olur :
{Binding}
Bu basitçe bize bulunulan Veri Bağlamı'nı döner (daha fazla bilgi ileride verilecek). Bu da olabilir ama bir çok durumda kontrolün bir özelliğini veri bağlamından başka bir özelliğe bağlamak istersiniz. Bunu yapan veri bağlama da şöyle görünür :
{Binding Path=ÖzellikAdı}
Path ile hangi özelliğe bağlanacağınızı belirtirsiniz, ancak Path bir veri bağlamanın default özelliği olduğu için onu dışarıda bırakıp şöyle yazabilirsiniz :
{Binding ÖzellikAdı}
Bazılarında Path özelliğinin belirtildiği bazılarında belirtilmediği bir çok örnek göreceksiniz, sonuçta tabi ki size bağlı.
Bir veri bağlamanın başka özellikleri de var tabi ki, bunların biri örnekte de kullandığımız ElementName özelliği. Bu özellik veri kaynağı olarak direk olarak diğer bir UI kontrolüne bağlanmamızı sağlar. Veri bağlamada kullandığımız her özellik virgül ile ayrılarak yazılır :
{Binding Path=Text, ElementName=txtValue}
Sonuç
Bu sadece WPF veri bağlama olasılıklarına bir küçük bakış. Sonraki bölümlerde veri bağlamanın ne kadar güçlü olduğunu göstermek için daha fazlasını inceleyeceğiz.