WPF:Data Binding 数据绑定基础(2)
数据绑定:
是一个建立应用界面和业务逻辑之间联系的一个过程。
被绑定的两者(界面和数据)是相互影响的(反映和记录对方的变化)。
绑定静态资源(资源在同一个XAML文件中,注意一定要放到最上边,紧随<Window>之后)
<Window xlmns:system="clr-namespace:assembly=mscorlib">
<Window.Resources>
<system.String x:Key="MenuFileHeader">File</system:String>
</Window.Resources>
<Grid><Menu><MenuItem Header={StaticResource MenuFileHeader}></MenuItem></Menu></Grid>
</Window>
绑定静态资源(资源放在独立的资源文件中:<HOME>"Resources"Skins"Default.xaml)
<ResourceDictionary xlmns:system="clr-namespace:assembly=mscorlib">
<system:String x:Key="WindowMainTitle>Window Main Title</system:String>
</ResourceDictionary>
... ...
在Application.xaml中引用所定义的资源文件(当然,你可以直接在这里定义资源)
<Application>
<Application.Resources>
<ResourceDictionary Source="Resources/Skins/Default.xaml"></ResourceDictionary>
</Application>
... ...
<Window Title={StaticResource WindowMainTitle}>
</Window>
绑定动态资源(资源在独立的资源文件中,并被通过动态装载,参见我的WPF:换肤基础)
<ResourceDictionary xlmns:system="clr-namespace:assembly=mscorlib">
<system:String x:Key="DynamicWindowMainTitle></system:String>
</ResourceDictionary>
... ...
<Window Title={DynamicResource WindowMainTitle}>
</Window>
绑定类对象属性(参见我的WPF:数据绑定基础)
绑定数据集(DataSet)
xxx.XAML
<Window>
<Grid>
<TextBox Text="{Binding Path=Table.UserName}"/>
</Grid>
</Window>
xxx.XAML.CS
DataSet dsUserInfo = GetUserInfo(); //默认Table[0]的名字是"Table",所以上面的Path是Table.xxx
DataContext = dsUserInfo;
数据绑定的能力还有很多,今天先到这里,休息,休息一下。
是一个建立应用界面和业务逻辑之间联系的一个过程。
被绑定的两者(界面和数据)是相互影响的(反映和记录对方的变化)。
绑定静态资源(资源在同一个XAML文件中,注意一定要放到最上边,紧随<Window>之后)
<Window xlmns:system="clr-namespace:assembly=mscorlib">
<Window.Resources>
<system.String x:Key="MenuFileHeader">File</system:String>
</Window.Resources>
<Grid><Menu><MenuItem Header={StaticResource MenuFileHeader}></MenuItem></Menu></Grid>
</Window>
绑定静态资源(资源放在独立的资源文件中:<HOME>"Resources"Skins"Default.xaml)
<ResourceDictionary xlmns:system="clr-namespace:assembly=mscorlib">
<system:String x:Key="WindowMainTitle>Window Main Title</system:String>
</ResourceDictionary>
... ...
在Application.xaml中引用所定义的资源文件(当然,你可以直接在这里定义资源)
<Application>
<Application.Resources>
<ResourceDictionary Source="Resources/Skins/Default.xaml"></ResourceDictionary>
</Application>
... ...
<Window Title={StaticResource WindowMainTitle}>
</Window>
绑定动态资源(资源在独立的资源文件中,并被通过动态装载,参见我的WPF:换肤基础)
<ResourceDictionary xlmns:system="clr-namespace:assembly=mscorlib">
<system:String x:Key="DynamicWindowMainTitle></system:String>
</ResourceDictionary>
... ...
<Window Title={DynamicResource WindowMainTitle}>
</Window>
绑定类对象属性(参见我的WPF:数据绑定基础)
绑定数据集(DataSet)
xxx.XAML
<Window>
<Grid>
<TextBox Text="{Binding Path=Table.UserName}"/>
</Grid>
</Window>
xxx.XAML.CS
DataSet dsUserInfo = GetUserInfo(); //默认Table[0]的名字是"Table",所以上面的Path是Table.xxx
DataContext = dsUserInfo;
数据绑定的能力还有很多,今天先到这里,休息,休息一下。