我有一个StackPanel
在Windows Phone应用中有三个TextBlock
,在一个看起来像这样的页面上:
<StackPanel>
<TextBlock></TextBlock>
<TextBlock></TextBlock>
<TextBlock></TextBlock>
</StackPanel>
根据属性值,我想显示TextBlock
中的任何一个。假设我有一个名为“Name”的属性,并且如果此属性的值为“1”,我想仅显示第一个TextBlock
,类似于2和3.有谁知道我怎么能做到这一点?
答案 0 :(得分:0)
将可见性绑定到模型上的属性并使用转换器: http://windowsphonegeek.com/articles/talking-about-converters-in-wp7--coding4fun-toolkit-converters-in-depth
public class IntToVisibilityConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
int intValue (int)value;
if(intValue == 1)
return Visibility.Visible;
else
return Visibility.Collapsed;
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
throw new NotImplementedException();
}
}