Каждую ячейку в DataGridView можно применить к ней DataGridViewCellStyle
, которая содержит (помимо всего прочего) Format
property, который определяет, как должно отображаться содержимое этой ячейки. И целой колонке или строке может быть назначен стиль ячейки по умолчанию, который он использует для всех ячеек в этой строке.
Так что, вероятно, происходит то, что у вас есть строка форматирования, используемая для столбца «Вес», который форматирует все значения с тремя конечными десятичными знаками. Когда вы извлекаете значение, оно фактически равно только 1
, но оно отображается как 1.000
из-за правил форматирования, применяемых ко всем ячейкам в этом столбце.
Если вы хотите получить это отформатированное значение, вы можете сделать это, обратившись к свойству FormattedValue
, а не к свойству Value
. Необходимые изменения в коде просты:
string value = DgdOrderInfo.Rows(Intcnt).Cells("Weight").FormattedValue.ToString.Trim
Я также сомнения, очень серьезно, что есть необходимость вызвать Trim
метод на обратной последовательности.
Странно, я предположил, что когда я ответил на вопрос, что вы работаете на C#, потому что фрагмент кода выглядит как C#. Затем я заметил тег VB.NET ... –