На рисунке есть простое решение этой проблемы, но я не смог его найти.
У меня есть привязка данных в приложении ASP.Net к GridView.Это сеточное представление связано с ObjectDataSource в соответствии со стандартным использованием.
Проблема, с которой я столкнулся, состоит в том, что одно из моих связанных полей использует свойство DataFormatString = "{0: C}" и из-за формата валюты, отображаемого припредпринимается попытка обновления, и объект воссоздается. Я получаю сообщение об ошибке: «$ 13,00 не является допустимым значением для десятичной дроби».
Очевидно, что это результат использования столбцом FormatString, а затем попытка привязать его кв моем объекте есть десятичное свойство с именем UnitPrice.
Я предполагаю, что есть некоторая разметка, которую я могу установить, которая может указывать, как значение переводится обратно?
Заранее спасибо за любую помощь.
Для любого любопытного решение в итоге выглядело так ...
<asp:TemplateField>
<HeaderTemplate>
UnitPrice
</HeaderTemplate>
<EditItemTemplate>
<asp:Label ID="lblEditItem" runat="server" Text='<%# Bind("UnitPrice", "{0:#,##0.00}") %>' Enabled="false" ></asp:Label>
</EditItemTemplate>
<ItemTemplate>
<asp:Label Runat="server" Text='<%# Bind("UnitPrice", "{0:c}") %>' ID="lblUnitPrice"></asp:Label>
</ItemTemplate>
</asp:TemplateField>