TOC

This article is currently in the process of being translated into Croatian (~98% done).

Data binding:

Data binding via Code-behind

Kao što smo vidjeli u prethodnim primjerima povezivanja podataka, definiranje veze korištenjem XAML-a je jako jednostavno, ali u nekim slučajevima možda želite povezati podatke kroz pozadinski kod. To je također poprilično jednostavno i pruža iste mogućnosti kao kada koristite XAML. Pokušajmo s "Hello, bound world" primjerom, ali ovog puta povežimo podatke koristeći pozadinski kod:

<Window x:Class="WpfTutorialSamples.DataBinding.CodeBehindBindingsSample"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="CodeBehindBindingsSample" Height="110" Width="280">
    <StackPanel Margin="10">
<TextBox Name="txtValue" />
<WrapPanel Margin="0,10">
    <TextBlock Text="Value: " FontWeight="Bold" />
    <TextBlock Name="lblValue" />
</WrapPanel>
    </StackPanel>
</Window>
using System;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;

namespace WpfTutorialSamples.DataBinding
{
    public partial class CodeBehindBindingsSample : Window
    {
public CodeBehindBindingsSample()
{
    InitializeComponent();

    Binding binding = new Binding("Text");
    binding.Source = txtValue;
    lblValue.SetBinding(TextBlock.TextProperty, binding);
}
    }
}

Povezivanje radi na način da se kreira Binding instanca. Definiramo putanju koju želimo izravno u konstruktoru, u ovom slučaju "Text" jer se želimo povezati s Text svojstvom. Nakon toga definiramo Source što bi u ovom primjeru trebala biti TextBox kontrola. Sada WPF zna da mora koristiti TextBox kao izvor i da treba dohvatiti vrijednost koja je sadržana u Text svojstvu.

U zadnjoj liniji koristimo SetBinding metodu kako bi spojili naš novokreirani Binding objekt s odredišnom/ciljanom kontrolom, u ovom slučaju s TextBlockom (lblValue). SetBinding() metoda prima dva parametra, jedan govori s kojom svojstvom se želimo povezati, a drugi sadrži Binding objekt kojeg želimo koristiti.

Sažetak

Kao što možete vidjeti, kreiranje poveznica u C# kodu je jednostavno i vjerojatno nešto jednostavnije za svladati za ljude kojima je povezivanje podataka novost, u odnosu na sintaksu koja se koristi kada se kreiraju u XAML-u. Koji ćete pristup odabrati je na vama - oba funkcioniraju jednako dobro.


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!