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;
}
}