WPF 非元素类绑定Binding之 Source 属性

Posted 胡文杰

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了WPF 非元素类绑定Binding之 Source 属性相关的知识,希望对你有一定的参考价值。

其用来绑定具体的数据对象:如系统信息跟我们定义的资源数据。

静态资源:

<Window.Resources>
    <SolidColorBrush x:Key="redBrush">Red</SolidColorBrush>
</Window.Resources>

XAML:

<StackPanel HorizontalAlignment="Center" VerticalAlignment="Center">
    <TextBlock Text="{Binding Source={x:Static SystemFonts.IconFontFamily},Path=Source}"   Width="100" />
    <TextBlock x:Name="txbSet" Width="100" Margin="0 10 0 0" Text="{Binding Source={StaticResource redBrush}}" Foreground="{Binding Source={StaticResource redBrush}}" />
</StackPanel>

View:

将 XAML 代码改成可读写的 TextBox:

<!--这个会报错-->
<TextBox Text="{Binding Source={x:Static SystemFonts.IconFontFamily},Path=Source}"   Width="100" />  

<!--这个需要加 Path 路径-->
<TextBox  Width="100" Margin="0 10 0 0" Text="{Binding Source={StaticResource redBrush}, Path=Color}" Foreground="{Binding Source={StaticResource redBrush}}" />

报错内容:

无法对“System.Windows.Media.FontFamily”类型的只读属性“Source”进行 TwoWay 或 OneWayToSource 绑定。



以上是关于WPF 非元素类绑定Binding之 Source 属性的主要内容,如果未能解决你的问题,请参考以下文章

WPF---数据绑定之RelativeSource

WPF学习第三十章 元素绑定——绑定到非元素对象

WPF:元素绑定

WPF---数据绑定之ValidationRule数据校验

WPF中的Binding技巧

WPF学习第三十章 元素绑定——绑定到非元素对象