只是一个简单的问题真的,可能是简单的真的,但嘿,这里去。是什么让WPF绑定与Winforms数据绑定相比如此强大?你喜欢和不喜欢它什么?任何显示其强大功能的代码示例都很酷。
uurity8g1#
WPF数据绑定的强大功能之一是它可以是双向的,即在代码中更改目标属性会更改绑定控件中的值(如果属性是依赖项或实现INotifyPropertyChanged)。另一个强大功能是转换器(请参见WPF Two way databinding explained、Properties and data binding)。我认为应该提到的一个常见功能是,您可以将WPF数据绑定与动画类一起使用
编辑
因此,WPF数据绑定具有这一特性以及其他许多难以在winforms中实现的特性1.可两路1.可用于模板1.可以加载数据Async1.可以有Converter1.可以直接绑定到XML1.可用于Animation
lrpiutwd2#
当您将WPF绑定到POCO对象上的属性以外的其他对象时,WPF绑定的强大功能就会显现出来。例如,可以将一个控件的启用状态绑定到另一个控件的选中状态,如下所示:
<StackPanel> <CheckBox x:Name="cb" Content="Enable next section" /> <Grid IsEnabled="{Binding ElementName=cb, Path=IsChecked}"> <Button Content="Click Me!" /> </Grid> </StackPanel>
2条答案
按热度按时间uurity8g1#
WPF数据绑定的强大功能之一是它可以是双向的,即在代码中更改目标属性会更改绑定控件中的值(如果属性是依赖项或实现INotifyPropertyChanged)。另一个强大功能是转换器(请参见WPF Two way databinding explained、Properties and data binding)。我认为应该提到的一个常见功能是,您可以将WPF数据绑定与动画类一起使用
编辑
因此,WPF数据绑定具有这一特性以及其他许多难以在winforms中实现的特性
1.可两路
1.可用于模板
1.可以加载数据Async
1.可以有Converter
1.可以直接绑定到XML
1.可用于Animation
lrpiutwd2#
当您将WPF绑定到POCO对象上的属性以外的其他对象时,WPF绑定的强大功能就会显现出来。
例如,可以将一个控件的启用状态绑定到另一个控件的选中状态,如下所示: