TOC

This article has been localized into Czech by the community.

Datové vazby (Data binding):

Ahoj, světe vazeb (data bindingu)!

Přesně jak jsme začali tento tutoriál s klasickým příkladem "Hello, world!" tak si ukážeme, jak je jednoduché použít "data binding" ve WPF v příkladu "Hello, bound world!". Pojďme do toho skočit rovnou a vysvětlení nechme na později.

<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>

Tento jednoduchý příklad ukazuje, jak navážeme hodnotu z TextBlocku tak, aby byla navázána s vlastností TextBoxu. Jak můžete vidět na obrázku, TextBlock je aktualizován automaticky vždy, když zadáte text do TextBoxu. Ve světě bez vazeb bychom měli očekávat vytvoření událost z TextBoxu a potom aktualizovat TextBlock pokaždé, když je text změněn. Ale s data bindingem může být toto spojení provedeno s použitím označování.

Syntaxe vazby (bindingu)

Všechna kouzla se dějí mezi složenými závorkami, které v jazyce XAML zapouzdřují rozšíření značek. Pro vázání dat se používá rozšíření Binding, které nám umožňuje popsat vztah vazby pro vlastnost text. Ve své nejjednodušší formě může vazba vypadat takto:

{Binding}

Tím jednoduše získáme aktuální kontext dat (více o tom později). To může být užitečné, ale v nejběžnějších situacích bychom chtěli svázat vlastnost s jinou vlastností v datovém kontextu. Taková vazba by vypadala takto:

{Binding Path=NameOfProperty}

Path (Cesta) označuje vlastnost, kterou chcete svázat, ale protože Path je výchozí vlastností vazby, můžete ji, pokud chcete, ponechat například i v této podobě:

{Binding NameOfProperty}

Můžete vidět mnoho různých příkladů, z nichž některé jsou definovány explicitně a některé z nich Path vynechávají. V konečném důsledku je to na vaší volbě.

Binding má mnoho dalších vlastností, jedna z nich je ElementName, kterou v našem příkladu používáme. Ta nám umožňuje přímé připojení k jinému prvku uživatelského rozhraní jako zdroji. Každá vlastnost, kterou nastavíte ve vazbě, je oddělena čárkou:

{Binding Path=Text, ElementName=txtValue}

Shrnutí

Ukázali jsme jen záblesk všech Binding možností ve WPF. V dalších kapitolách jich objevíme víc, abychom vám ukázali, jak mocné jsou tyto datové vazby.


This article has been fully translated into the following languages: Is your preferred language not on the list? Click here to help us translate this article into your language!