У вас есть много вариантов. Два из которых:
- Измените привязку, чтобы игнорировать формат строки и переместите ее в модель ViewModel / Model
- Создание собственного конвертера значений
Изменение привязки является самым простым, однако наименее многоразовым :
Обновление привязки в XAML:
<DataGridTextColumn
Width="15*"
ElementStyle="{StaticResource RightAlignStyle}"
Header="Coût (k€)"
Binding="{Binding Path=TechnicalCostAmount, Mode=TwoWay}"/>
Тогда в вашей ViewModel / Model:
public string TechnicalCostAmount
{
get { return string.Format("{0:n0}", _TechnicalCostAmount); }
set
{
Decimal.TryParse(value, _TechnicalCostAmount);
RaisePropertyChange("TechnicalCostAmount");
}
}
Создание пользовательского преобразователя значений делает то же самое, что и код выше, однако позволяет использовать его в нескольких местах.
См .: http://wpftutorial.net/ValueConverters.html