Quiero establecer el TextBlock
en modo visible/contraído en función del valor encuadernado. No funciona y recibo este mensaje cuando quiero depurar mi aplicación:WPF: No se puede configurar el convertidor; error al iniciar la aplicación
Establecer propiedad 'System.Windows.Data.Binding.Converter' lanzó una excepción.
El valor que se binded es del tipo Uri
. Hay un interior InvalidCastException
que dice:
No se puede convertir objeto de tipo 'System.String' al tipo 'System.Windows.Data.IValueConverter'.
Aquí es mi divisa:
public class VisibilityConverter : IValueConverter
{
public object Convert(object value, Type targetType,
object parameter, CultureInfo culture)
{
if (value is string && string.IsNullOrEmpty(value as string))
{
return Visibility.Collapsed;
}
else if (value == null)
{
return Visibility.Collapsed;
}
else
{
return Visibility.Visible;
}
}
public object ConvertBack(object value, Type targetType,
object parameter, CultureInfo culture)
{
throw new NotSupportedException();
}
}
Y aquí está el XAML que produce la excepción:
...
<Page.Resources>
<converters:VisibilityConverter x:Key="visibilityConverter" />
</Page.Resources>
...
<TextBlock Visibility="{Path=UrlAddress, Converter=visibilityConverter}">
This never works!
</TextBlock>
...
Ayuda, por favor!
Felicidades en una primera respuesta;) – Boris
Thanks very helpful :) –