Categories: WPF 教程

WPF教程之 通过后台代码进行数据绑定

数据绑定:

通过后置代码进行数据绑定

正如我们在之前的数据绑定示例中看到的那样,使用XAML定义绑定非常简单,但是对于某些情况,您可能希望从后置代码中执行此操作。 这也非常简单,并提供与使用XAML时完全相同的可能性。 让我们尝试“Hello,bound world”示例,但这一次从后置代码创建所需的绑定:

<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);
}
    }
}

它的工作原理是创建一个Binding实例。 我们直接在构造函数中指定我们想要的路径,在本例中为“Text”,因为我们要绑定到Text属性。 然后我们指定一个Source,对于这个例子,它应该是TextBox控件。 现在WPF知道它应该使用TextBox作为源控件,而且我们指定找包含在其Text属性的值。

在最后一行中,我们使用SetBinding方法将新创建的Binding对象与目的/目标控件,在本例中为TextBlock (lblValue)组合在一起。 SetBinding()方法接受两个参数,一个用于指示我们要绑定到哪个依赖项属性,另一个用于保存我们希望使用的绑定对象。

小结

正如您所看到的,与在XAML中内创建它们的语法相比,在C#代码中创建绑定也很容易,对于刚接触数据绑定的人来说可能更容易掌握。 你使用哪种方法取决于你 – 它们都工作得很好。

admin

这个人很懒,什么都没有留下~

Share
Published by
admin

Recent Posts

自定义指令:聊聊vue中的自定义指令应用法则

今天我们来聊聊vue中的自定义…

3 天 ago

聊聊Vue中@click.stop和@click.prevent

一起来学下聊聊Vue中@cli…

1 周 ago

Nginx 基本操作:启动、停止、重启命令。

我们来学习Nginx基础操作:…

2 周 ago

Vue3:手动清理keep-alive组件缓存的方法

Vue3中手动清理keep-a…

2 周 ago

聊聊React和Vue组件更新的实现及区别

React 和 Vue 都是当…

3 周 ago