<Grid>
<StackPanel VerticalAlignment="Center">
<TextBlock Text="{Binding model.WPF}" Height="208" TextWrapping="WrapWithOverflow">
</TextBlock>
<Button Command="{Binding CopyCmd,Mode=Default}" Height="93" Width="203" > Copy</Button>
<Button Command="{Binding CopyCmd,Mode=OneTime}" Height="93" Width="203" >Copy</Button>
<Button Command="{Binding CopyCmd,Mode=OneWay}" Height="93" Width="203" >Copy</Button>
<Button Command="{Binding CopyCmd,Mode=OneWayToSource}" Height="93" Width="203" >Copy</Button>
<Button Command="{Binding CopyCmd,Mode=TwoWay}" Height="93" Width="203" >Copy</Button>
</StackPanel>
</Grid>```
使用 Mode 属性指定绑定的方向。以下枚举列表列出了可供绑定更新的选项:
无论是目标属性还是源属性,只要发生了更改,TwoWay 就会更新目标属性或源属性。
OneWay 仅当源属性发生更改时更新目标属性。
OneTime 仅当应用程序启动时或 DataContext 进行更改时更新目标属性。
OneWayToSource 在目标属性更改时更新源属性。
Default:使用目标属性的默认 Mode 值。
仍然使用上个文章中的文本框,标签控件,以及滚动条来说明绑定模式不同
1。使用twoway方式绑定以后,如果手动更改textbox的值,此时如果通过按钮事件来查看滚动条的value值,就会发现和textbox是一致
2。oneway方式,就是滚动条改变的时候会改变文本框的显示值,但是文本框更改的时候不会更改滚动条的值
3。onetime方法,会发现文本框的值会是滚动条的初始值。而且不会变化
4。onewaytosource。就是文本框更改的时候会改变源的属性。这个时候其实数据源和数据目标已经颠倒过来了
5。default方式,这个方式完全就是根据控件的属性来设置的。有的属性适合twoway方式,比如交互的UI控件,有点只能oneway方式
WFP Binding(五种模式)
最新推荐文章于 2024-12-30 13:43:59 发布