wpf DataBinding

Posted sclu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了wpf DataBinding相关的知识,希望对你有一定的参考价值。

通过源和目标之间设置绑定,在源更改时目标也会更改。

绑定可以设置为单向,和双向。Mode有5种。

技术图片

 

一。通过xaml设置绑定,slier为源,TextBlock为目标。

 技术图片

<Slider Height="auto" Name="slider1" Margin="3" Minimum="1" Maximum="40" Value="10" TickPlacement="TopLeft" TickFrequency="1" IsSnapToTickEnabled="True"/>
<TextBlock Name="textBlock1" Text="TextBlock" Margin="10" FontSize="{Binding ElementName=slider1,Path=Value,}"/> //数据绑定
<Button Margin="10" Content="Button" Width="75" Click="Button_Click"/>

技术图片

点击button,修改slider值,textblock也会修改,但是修改textblock,slider不会修改。

 技术图片

 此时设置binding时的mode为TwoWay。

技术图片

技术图片

 

二。通过代码设置,删除绑定

技术图片

 

三、通过ListBox的Tag修改TextBlock颜色。

技术图片

<TextBlock Name="textBlock1" Text="TextBlock" Margin="10" Foreground="{Binding ElementName=listbox, Path=SelectedItem.Tag}"/>

<ListBox Height="100" Name="listbox">
<ListBoxItem Tag="Blue">Blue</ListBoxItem>
<ListBoxItem Tag="DarkBlue">Dark Blue</ListBoxItem>
<ListBoxItem Tag="LightBlue">Light Blue</ListBoxItem>
</ListBox>

四。通过TextBox的text绑定TextBlock的fontsize

//双向绑定 Mode=TwoWay

//在修改text时,立即修改textblock的fontsize        UpdateSourceTrigger=PropertyChanged

<TextBox Height="23" TextWrapping="Wrap" Text="{Binding ElementName=textBlock1, Path=FontSize,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" Margin="10" Width="200" Name="textbox" />

 由于textblock.fontsize又和slider1.value绑定,所以三者都绑定了。

技术图片

以上是关于wpf DataBinding的主要内容,如果未能解决你的问题,请参考以下文章

wpf窗体阴影

WPF 精修篇 Winform 嵌入WPF控件

wpf 用啥字体

wpf 添加动态图片

wpf编程 求大神指导如何用WPF制作一个论坛。。。!!急!!!

wpf和winform的区别