Настройка формата строки в текстовом поле, привязанном к соглашению Caliburn.Micro

У меня есть WPF TextBox, который привязан к свойству номера модели представления -Distanceчерез Caliburn.Micro соглашения об именах. Я хочу иметь возможность настраивать формат строки TextBox, сохраняя привязку соглашения, которую установил Caliburn.Micro . Как мне это сделать?

Из моей View Model:

public double Distance
{
    get { return _distance; }
    set
    {
        _distance = value;
        NotifyOfPropertyChange(() => Distance);
    }
}

Из моего Вида:

<TextBox x:Name="Distance"/>

Когда Distanceне равен нулю -, я хочу отобразить число с фиксированным набором десятичных знаков, а когда Distanceравен нулю, я хочу, чтобы текстовое поле было пустым.

Используя явную привязку, я могу привязать свойство TextBox.Textк Distance, а затем одновременно установить StringFormat:

<TextBox x:Name="Distance" Text="{Binding Distance, StringFormat=0.000;;#}"/>

Однако явная привязка Textзамкнула бы -цепь привязки соглашения об именах Caliburn.Micro . Можно ли настроить формат строки без одновременной установки пути привязки свойства TextBox.Text, чтобы я мог полагаться исключительно на Caliburn.Micro для обработкиDistance-к-TextBoxпривязка?

6
задан Anders Gustafsson 16 August 2012 в 12:43
поделиться