En general, hay dos formas de hacerlo, una clase de convertidor o una propiedad en el modelo de vista que esencialmente convierte el valor por usted.
Tiendo a usar el enfoque de propiedad si es una conversión única. Si desea reutilizarlo, use el convertidor. A continuación, encuentre un ejemplo del convertidor:
<ValueConversion(GetType(Boolean), GetType(Visibility))> _
Public Class BoolToVisibilityConverter
Implements IValueConverter
Public Function Convert(ByVal value As Object, ByVal targetType As System.Type, ByVal parameter As Object, ByVal culture As System.Globalization.CultureInfo) As Object Implements System.Windows.Data.IValueConverter.Convert
If value IsNot Nothing Then
If value = True Then
Return Visibility.Visible
Else
Return Visibility.Collapsed
End If
Else
Return Visibility.Collapsed
End If
End Function
Public Function ConvertBack(ByVal value As Object, ByVal targetType As System.Type, ByVal parameter As Object, ByVal culture As System.Globalization.CultureInfo) As Object Implements System.Windows.Data.IValueConverter.ConvertBack
Throw New NotImplementedException
End Function
End Class
Un método de propiedad ViewModel simplemente verificaría el valor de la propiedad booleana y devolvería una visibilidad basada en eso. Asegúrese de implementar INotifyPropertyChanged y solicítelo en las propiedades Boolean y Visibility para actualizarlo correctamente.