- 浏览: 36041 次
- 性别:
- 来自: 北京
文章分类
最新评论
Data Binding
markup extensions(quotation marks are not allowed)-{Binding ..}(wpf属性系统的重要标志!)
<TextBlock Text=”{Binding ElementName=SampleText, Path=Text}”
FontFamily=”{Binding ElementName=FontList,
Path=SelectedItem}”
FontSize=”10”
TextWrapping=”Wrap”
Margin=”0 0 0 4” />
(property:ElementName-Path is a set of name-value,or object-property)
<StackPanel>
<TextBlock Text=”This is fun!”
FontSize=”{Binding ElementName=mySlider,Path=Value}”
HorizontalAlignment=”Center” />
<Slider x:Name=”mySlider”
Minimum=”8”
Maximum=”64” />
</StackPanel>
two-way data binding
Property-Mode,its value determines how the data will flow between the data source and the target;
default:TextBox-TwoWay,TextBlock-OneWay;
Name | Description |
OneWay | Changes to the source will update the target. |
TwoWay |
Changes to the source will update the target, and changes on the target will update the source. |
OneTime | The target is set only when the application starts or when the data context is changed. |
OneWayToSource | Changes to the target will update the source. |
X:Static-search for StaticExtension,used to retrieve data from static value members on classes;
DataContext-“context” or the “starting point” from which the data binding is taking place
all the controls in WPF inherit from FrameworkElement;DataContext is the property of FrameworkElement;
"ElementName-Path" is explicitly apporach for providing a context;
a control’s DataContext is inherited from its parent;
对比两段代码的效果:
<ListBox x:Name=”FontList”
DataContext=”{x:Static Fonts.SystemFontFamilies}”
DockPanel.Dock=”Left”
ItemsSource=”{Binding}”
ToolTip=”{Binding Path=Count, Mode=OneTime}”
Width=”160” />
<ListBox x:Name=”FontList”
DataContext=”{x:Static Fonts.SystemFontFamilies}”
DockPanel.Dock=”Left”
ItemsSource=”{Binding}”
Width=”160”>
<ListBox.ToolTip>
<ToolTip>
<StackPanel Orientation=”Horizontal”>
<TextBlock Text=”{Binding Path=Count,Mode=OneTime}”/>
<TextBlock Text=” fonts are installed.”/>
</StackPanel>
</ToolTip>
</ListBox.ToolTip>
</ListBox>
WPF property system
allows properties to participate in data binding, styling, animation,and several other exciting features;
WPF特征编程的源头;
dependency property-用WPF属性系统注册的属性(是否是依赖属性可查官方文档)
-include metadata about the property,such as the default value for the property, the default binding mode, and other miscellaneous items;
-provide automatic change notification;
-a property must be a dependency property to be the target of a data binding;
-data sources are not required to be dependency properties;
change notification mechanism:
object code method 1
-property setter,raise a propertyname+Changed event;WPF automatically checks for this event and updates data bindings accordingly;
object code method 2
-class owns property,implement INotifyPropertyChanged;
以下等效:
<!--xaml形式-->
<TextBox>
<TextBox.Text>
<Binding Path=”FirstName Mode=”TwoWay” />
</TextBox.Text>
</TextBox>
<!--markup extension形式-->
<TextBox Text=”{Binding Path=FirstName,Mode=TwoWay}” />
备注:Label标签的Target属性,是指Label连接的目标控件。
发表评论
-
wpf应用实例
2010-07-24 15:45 1065使用WPF快速创建可拖拽的对象和窗体。 -
业务流的前端,intel终极理想:感应终端环境与任意平面成屏技术
2010-07-08 12:44 1022在欧美等人力成本高 ... -
wpf 研习1-24小时自学wpf16
2010-06-15 23:21 1382Visualizing Lists-displaying mo ... -
wpf 研习1-24小时自学wpf15
2010-06-14 23:25 936deeper into data binding ad ... -
wpf 研习1-24小时自学wpf14
2010-06-13 10:27 1400Resources and Styles 从下图,我们 ... -
wpf 研习1-24小时自学wpf13
2010-06-11 23:04 910Presenters and Views-the Shell ... -
wpf 研习1-24小时自学wpf12
2010-06-11 14:26 770A Contact Manager Choosin ... -
wpf 研习1-24小时自学wpf11
2010-06-10 15:02 969output WPF Document Con ... -
了解WPF中的路由事件和命令
2010-06-09 23:12 1333路由事件浏览 (1)在vs designer中,如在窗口中增 ... -
wpf 研习1-24小时自学wpf10
2010-06-09 16:25 976Commands In WPF, a command is ... -
wpf 研习1-24小时自学wpf9
2010-06-08 19:19 774events handle routed event: ... -
wpf 研习1-24小时自学wpf8
2010-06-07 16:10 886A real-world program basic ... -
wpf 研习1-24小时自学wpf7
2010-06-07 11:04 847Application deployable file ... -
wpf 研习1-24小时自学wpf5
2010-06-05 16:14 1065basic Control Control base ... -
wpf 研习1-24小时自学wpf4
2010-06-05 11:31 667Layout Panel,Decorator; Sy ... -
wpf 研习1-24小时自学wpf3
2010-06-04 19:11 812wpf项目文件 vs->新项目->wpf应用程序 ... -
wpf 研习1-24小时自学wpf2
2010-06-04 15:39 829XAML,既然用户控件是一个大类,那么干脆对这个集合进行统一的 ... -
wpf 研习1-24小时自学wpf1
2010-06-04 12:05 728WPF是微软.net的UI 架构,也是非常重要的框架。 ... -
wpf主要知识点
2010-06-04 10:47 983template,presenter,layout,visua ... -
路由事件
2010-05-17 22:09 648如果我们在一个窗口上增加一个按钮,并且看下它的后置代码,会发现 ...
相关推荐
【标题】:“WPF研习1-24小时自学WPF9” 在Windows Presentation Foundation(WPF)的世界里,这是一段深入学习之旅的开端。WPF是.NET Framework的一个重要组成部分,它为创建丰富的、高性能的桌面应用程序提供了...
标题 "wpf 研习1-24小时自学wpf7" 提示我们这是一个关于Windows Presentation Foundation(WPF)的学习资源,可能是书籍、课程或教程的一部分,旨在帮助初学者在24小时内掌握WPF的基础知识。WPF是.NET Framework中的...
【标题】:“wpf 研习1-24小时自学wpf8”是指一系列针对Windows Presentation Foundation(WPF)框架的学习教程,旨在帮助初学者在24小时内掌握WPF的基础知识和应用技巧。WPF是.NET Framework的一部分,用于构建...
NULL 博文链接:https://x-dome.iteye.com/blog/684355
对于想要开发Windows应用的学员,WinForms和WPF(Windows Presentation Foundation)的使用也会有所介绍。 在幻灯片部分,可能会包含每章节的重点摘要,清晰的示例图解,以及关键概念的解释,帮助学生更好地吸收和...