注:在WPF开发中,我们常常是不为控件设置Name值的,而在控件绑定中,必须为源控件添加Name属性值;而有些控件可能会不含有Name属性,此时则使用x:Name来指定名称。
在控件绑定中有一个比较特殊的存在——模板绑定-TemplateBinding,它与Binding并不在一个继承结构上。TemplateBinding是用在控件模板定义中的,用于绑定模板对应控件中的属性,示例如下:
<TextBox x:Name="templatebinding">
<TextBox.Template>
<ControlTemplate TargetType="TextBox">
<TextBlock Text="{TemplateBinding Text}" />
</ControlTemplate>
</TextBox.Template>
</TextBox>
TemplateBinding可以简单理解为在Binding中设置了ElementName为其父级控件 —— 事实并非如此,仅作为辅助理解。TemplateBinding相对与Binding要少很多属性内容。
数据绑定
此处数据绑定表示在WPF中的对象绑定,即常见场景 就是把数据库 数据显示到 界面上。而在真实的项目开发中 ,常 会用到MVVM模式,数据绑定将会在那里体现出来,但MVVM模式开发则不在此节中叙述。
下面以一个最简单的示例解释数据绑定:
后台类 —— 数据源结构:
class ForDataBinding
{
public int Count { get; set; }
}
数据源初始化 —— 创建数据并将数据绑定到界面:
ForDataBinding data = new ForDataBinding();
data.Count = 10;
this.fordatabinding.DataContext = data;
界面控件设置 —— 指定控件绑定到源数据的哪个属性:










