vla*_*c77 1 wpf binding wpf-controls
如何将 setter 分配给条件值(例如 more than )0?如果值不是,我需要隐藏一个对象0。最好的方法是什么?任何想法都受到高度赞赏。
XAML 示例DataTrigger:
<DataTrigger Binding="{Binding Role.Count}" Value="0">
<Setter TargetName="Counts" Property="Visibility" Value="Hidden" />
</DataTrigger>
Run Code Online (Sandbox Code Playgroud)
编写一个值转换器,例如IsGreaterThanZero,然后将您的 XAML 编写为,
<Window.Resources>
<local:IsGreaterThanZero x:Key="isGreaterThanZero"/>
</Window.Resources>
<DataTrigger Binding="{Binding Role.Count, Converter={StaticResource isGreaterThanZero}" Value="True">
<Setter TargetName="Counts" Property="Visibility" Value="Hidden" />
</DataTrigger>
Run Code Online (Sandbox Code Playgroud)
IsGreaterThanZero 可以写成,
public class IsGreaterThanZero: IValueConverter
{
#region IValueConverter Members
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
return Int32.Parse(value as string) > 0;
}
public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
throw new NotImplementedException() ;//"PresenterConverter.ConvertBack() is not implemented!");
}
#endregion
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3682 次 |
| 最近记录: |