CAS1224 Ответов: 2

Как преобразовать тип данных столбца DataGridView из строкового в десятичный?


Я надеюсь найти простой способ преобразовать весь столбец в моем datagridview из строкового типа данных в десятичный. Может быть, что-то простое вроде этого?

DataGridView1.Columns(4).ValueType = Decimal

2 Ответов

Рейтинг:
2

Member 12863425

попробуйте написать convert it in sql ,это будет легко


CHill60

Пара проблем с вашим решением:
1. вопрос не помечен тегом "Sql", поэтому ваше предложение может быть совершенно неуместным-мы просто не знаем, как заполняется DataGridView.
2.это вполне может быть легко обеспечить такое преобразование, но мы понятия не имеем, каким опытом обладает ОП, поэтому приведите примеры, а не голые утверждения вроде этого.
3. лучшим советом для ОП было бы спросить, как столбец был строкой в первую очередь, он должен быть настроен как правильный тип.
4. этому вопросу уже более 3 лет, и ваше решение не добавило никакой ценности потоку

Рейтинг:
1

Sergey Alexandrovich Kryukov

Нет такого понятия, как"преобразовать тип". Вы можете "конвертировать" только данные, экземпляр какого-то типа. Вы можете использовать один из System.Decimal.Parse методы:
http://msdn.microsoft.com/en-us/library/system.decimal.parse%28v=vs.110%29.aspx[^].

Вы можете установить это свойство ValueType, но он может использоваться только для фильтрации или сортировки столбцов по отношению к содержимому их ячеек:
http://msdn.microsoft.com/en-us/library/system.windows.forms.datagridviewcolumn.valuetype%28v=vs.110%29.aspx[^].

В принципе, вы также можете сделать свой собственный пользовательский тип столбца таким же, как и другие типы столбцов: http://msdn.microsoft.com/en-us/library/system.windows.forms.datagridviewcolumn%28v=vs.110%29.aspx[^].

Функциональность этого типа столбцов будет зависеть от того, что вы хотите, но одно можно сказать наверняка: ValueType собственность должна вернуться typeof(System.Decimal), и он должен возвращать или принимать значения этого типа с соответствующим свойством Value специализированного DataGridViewCell тип, который вы также должны создать, так же, как и эти:
http://msdn.microsoft.com/en-us/library/system.windows.forms.datagridviewcell%28v=vs.110%29.aspx[^].

—СА