Смысл класса ValueConversionAttribute?

Какой смысл этого атрибута? После добавления мне все еще нужно сделать объект приведения значения.

[ValueConversion(sourceType: typeof(double), targetType: typeof(string))]
public class SpeedConverter : IValueConverter
{
    public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
    {
        var speed = (double)value;

Это только для читабельности кода? Потому что, когда я изменяю путь привязки к строке в xaml, Visual Studio не выдает предупреждение о неправильном типе, а исключение выдается только при приведении, поэтому это не имеет значения даже при раннем обнаружении ошибок при компиляции. Я также могу изменить приведение к строке, и предупреждение не выдается, несмотря на конфликт с этим атрибутом.

Ответы на вопрос(2)

Ваш ответ на вопрос