Очень расстроен !!!!EditorFor ApplyFormatInEditMode Валюта не работает Редактировать
На начальном дисплее валюта отображается нормально, но когда я изменяю значение, оно не форматируется. Я создаю новый проект для иллюстрации.
public class TestViewModel
{
[DisplayName("Text Box For")]
public decimal Cost1 { get; set; }
[DisplayName("Editor For")]
[DisplayFormat(DataFormatString = "{0:C}", ApplyFormatInEditMode = true)]
public decimal Cost2 { get; set; }
}
@model EditorForTest.Models.TestViewModel
<br/>
@Html.LabelFor(m => m.Cost1)
@Html.TextBoxFor(m => m.Cost1, new { Value = String.Format("{0:C}", Model.Cost1) })
<br/>
@Html.LabelFor(m => m.Cost2)
@Html.EditorFor(m => m.Cost2)
<br/>
public ActionResult Test()
{
return View(CurrentTest);
}
private static TestViewModel _currentTest;
private static TestViewModel CurrentTest
{
get { return _currentTest ?? (_currentTest = GetNewTest()); }
set { _currentTest = value; }
}
public static TestViewModel GetNewTest()
{
TestViewModel testViewModel = new TestViewModel();
testViewModel.Cost1 = 1234;
testViewModel.Cost2 = 1234;
return testViewModel;
}
Это выглядит нормально, когда она открывает:
Но при редактировании его форматирование теряется.
Что я делаю не так ?????