diff options
Diffstat (limited to 'Gestor.Common/Gestor.Common.Converters/ZeroToVisibilityValorConverter.cs')
| -rw-r--r-- | Gestor.Common/Gestor.Common.Converters/ZeroToVisibilityValorConverter.cs | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/Gestor.Common/Gestor.Common.Converters/ZeroToVisibilityValorConverter.cs b/Gestor.Common/Gestor.Common.Converters/ZeroToVisibilityValorConverter.cs new file mode 100644 index 0000000..4665173 --- /dev/null +++ b/Gestor.Common/Gestor.Common.Converters/ZeroToVisibilityValorConverter.cs @@ -0,0 +1,26 @@ +using System; +using System.Globalization; +using System.Windows; +using System.Windows.Data; +using System.Windows.Markup; + +namespace Gestor.Common.Converters; + +public class ZeroToVisibilityValorConverter : MarkupExtension, IValueConverter +{ + public object Convert(object value, Type targetType, object parameter, CultureInfo culture) + { + decimal result; + return (object)(Visibility)((value == null || (!decimal.TryParse(value.ToString(), out result) && decimal.Parse(value.ToString()) <= 0m)) ? 2 : 0); + } + + public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) + { + return (value != null && !string.IsNullOrEmpty(value.ToString())) ? int.Parse(value.ToString()) : 0; + } + + public override object ProvideValue(IServiceProvider serviceProvider) + { + return this; + } +} |