C# 數據綁定 綁定到本地對象
可綁定到任何包含所需數據的.NET對象,只要編譯器能夠定位該對象即可。如果在使用對象的控件所在的上下文環(huán)境(即相同的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。
點擊加載更多評論>>