这里的绑定指的是一个控件或者多个控件绑定另外一个控件的属性,这样当这个控件属性发生变化时,前者会同步变化,无需再写c#代码,与winform相比,代码量减少了很多。方便快捷。
xaml代码如下:
<Window x:Class="绑定Demo.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:绑定Demo"
mc:Ignorable="d"
Title="MainWindow" Height="450" Width="600" WindowStartupLocation="CenterScreen">
<StackPanel>
<Slider Name="SliderFontSize" Margin="5,0,0,0" Minimum="5" Maximum="40" Value="10" TickPlacement="BottomRight" TickFrequency="1"></Slider>
<Label Name="labelText" FontSize="{Binding ElementName=SliderFontSize,Path=Value,Mode=TwoWay}" Margin="10,0,0,0">好好学习,天天向上</Label>
<Label Name="labelText2" FontSize="{Binding ElementName=SliderFontSize,Path=Value,Mode=TwoWay}" Margin="10,0,0,0">我是最棒的</Label>
<StackPanel Orientation="Horizontal">
<Button Width="100" Margin="120,0,0,0" Click="Button_Click" Name="btnSetSmall">设置小号字体</Button>
<Button Width="100" Margin="20,0,0,0" Name="btnSetNormal" Click="btnSetNormal_Click">设置普通字体</Button>
<Button Width="100" Margin="20,0,0,0" Name="btnSetLarge" Click="btnSetLarge_Click">设置大号字体</Button>
</StackPanel>
</StackPanel>
</Window>
//以下是说明部分:
ElementName : 绑定的控件名称
Path : 绑定的控件属性
Mode : 绑定模式,TwoWay指的是绑定者和被绑定者可以互相影响
button代码:
private void Button_Click(object sender, RoutedEventArgs e)
{
labelText.FontSize = 5;
}
private void btnSetNormal_Click(object sender, RoutedEventArgs e)
{
labelText.FontSize = 20;
}
private void btnSetLarge_Click(object sender, RoutedEventArgs e)
{
labelText.FontSize = 40;
}