FlipView、ComboBox数据绑定和数据绑定的Converter
2014-06-23 15:42
162 查看
FlipView、ComboBox等控件类似于ListView, 都可以使用Items、ItemSource等,都可以定义ItemTemplate定制Item的展现形式。
FlipView是同时只显示一项,可以通过左右侧的方向按钮来左右移动显示其他项。
数据绑定的Converter
先需要定义转换器类,转换器要实现IValueConverter接口
Convert方法用于把绑定模型的属性类型转换为被绑定UI元素的数据类型,value为转换前数据,把转换后数据以返回值形式返回。
ConvertBack方法用于当TwoWay绑定的时候UI值发生变化反向修改Model属性值的时候做转换。如果不做TwoWay绑定可以简单抛出“未实现异常”即可。
在使用Converter的Xaml页面顶端加入:xmlns:local=“clr-namespace:Converter所在的命名空间”,local为随意取的名字。这句话相当于在xaml中using一个namespace。
根节点中声明Resources资源:<local:BoolVisibilityConverter x:Key="boolVisibilityConverter"></local:BoolVisibilityConverter>
数据绑定中Visibility="{Binding IsVIP, Converter={StaticResource boolVisibilityConverter}}"
public class BoolVisibilityConverter:IValueConverter
{
public object Convert(object value,Type targetType, object parameter, string language)
{
bool b=(bool) value;
return b?Visibility.Visible:Visibility.Collapsed;
}
public object ConvertBack(object value,Type targetType, object parameter, string language)
{
//不是TwoWay绑定: throw new NotImplementedException();
Visibility v=(Visibility) value;
return v==Visibility.Visible;
}
}
FlipView是同时只显示一项,可以通过左右侧的方向按钮来左右移动显示其他项。
数据绑定的Converter
先需要定义转换器类,转换器要实现IValueConverter接口
Convert方法用于把绑定模型的属性类型转换为被绑定UI元素的数据类型,value为转换前数据,把转换后数据以返回值形式返回。
ConvertBack方法用于当TwoWay绑定的时候UI值发生变化反向修改Model属性值的时候做转换。如果不做TwoWay绑定可以简单抛出“未实现异常”即可。
在使用Converter的Xaml页面顶端加入:xmlns:local=“clr-namespace:Converter所在的命名空间”,local为随意取的名字。这句话相当于在xaml中using一个namespace。
根节点中声明Resources资源:<local:BoolVisibilityConverter x:Key="boolVisibilityConverter"></local:BoolVisibilityConverter>
数据绑定中Visibility="{Binding IsVIP, Converter={StaticResource boolVisibilityConverter}}"
public class BoolVisibilityConverter:IValueConverter
{
public object Convert(object value,Type targetType, object parameter, string language)
{
bool b=(bool) value;
return b?Visibility.Visible:Visibility.Collapsed;
}
public object ConvertBack(object value,Type targetType, object parameter, string language)
{
//不是TwoWay绑定: throw new NotImplementedException();
Visibility v=(Visibility) value;
return v==Visibility.Visible;
}
}
相关文章推荐
- Xaml中如何对ComboBox绑定一个数据集合
- ComboBox 数据绑定技巧
- c# winform comboBox动态下拉列表,comboBox动态绑定数据库里的数据
- C# winform combobox 在绑定数据之后插入一项选择项
- C# winform combobox 在绑定数据之后插入一项选择项
- c# combobox 数据绑定
- Flex ComboBox绑定服务器端数据
- comboBox数据绑定
- datagridview (三)DataGridViewComboBoxColumn 列或者DataGridViewComboBoxCell 赋值绑定数据的方法
- Flex中ComboBox静态数据绑定的3种写法
- 下拉框(ComboBox)数据绑定时触发SelectedIndexChanged事件的初步解决
- ComboBox的数据绑定
- [★]ComboBox 经验总结[动态绑定数据之后,静态添加一条数据] 转
- combobox数据绑定
- combobox使用--绑定数据设置
- c# 如何向comboBox中绑定数据库中指定的数据信息;
- ComboBox数据绑定的一个实例
- VB.Net自己写的一个控件:ComboBox下拉列表中显示多列数据(可以绑定数据表)
- [VB.NET]combobox数据绑定
- c# 中combobox绑定数据