可绑定到任何包含所需数据的.NET对象,只要编译器能够定位该对象即可。如果在使用对象的控件所在的上下文环境(即相同的XAML代码块)中可以找到该对象,就可通过设置绑定的ElementName属性来指定绑定源。
请看对Options窗口中的ComboBox控件所做的更改:
<ComboBox HorizontalAlignment="Left" Margin="196,58,0,0" VerticalAlignment="Top"
Width="86" Name="numberOfPlayersComboBox" Selectedlndex="O"
IsEnabled="{Binding ElementName=playAgainstComputerCheck, Path=IsChecked}" >
注意IsEnabled属性。没有指定tme或false值,而是使用了一长串用花括号括起来的文本。这种指定属性值的方法称为“标记扩展语法”,也是一种用于指定属性的便捷方法。还可以使用以下写法:
<ComboBox HorizontalAlignment="Left" Margin="196,58,0,0"
VerticalAlignment="Top" Width="86" Name="numberOfPlayersComboBox"
SelectedIndex="0" >
<ComboBox.IsEnabled>
<Binding ElementName="playAgainstComputerCheck"
Path="IsChecked" />
</ComboBox.IsEnabled>
上面两段示例代码都可将绑定源设罝为playAgainstComputerCheck复选框a源属性是通过Path指定的 IsChecked 属性。
绑定R标被设置为IsEnabled属性。两段示例代码都通过将绑定指定为该属性的内容来完成这种设置,只不过使用了两种不同的语法而己。最后,由于在ComboBox上进行绑定,因此也就隐式指定了绑定目标.
这一绑定关系可以让ComboBox的IsEnabled属性随着CheckBox的IsChecked属性值自动进行设置或清除。结果,我们没有使用任何代码,就可以在用户更改CheckBox的值时启用和禁用ComboBox。
已有 22658 名学员学习以下课程通过考试
最需教育客户端 软件问题一手掌握
去 App Store 免费下载 iOS 客户端
点击加载更多评论>>