|
Ошибка при очистки поля dataGridView
|
|||
---|---|---|---|
#18+
Странная вещь происходит, может кто подскажет причину. В таблице есть поле типа tinyint. Не обязательное для заполнение. Если я ввожу туда значение - сохраняет. А если стираю это значение (ячейка datagridview пустая) и нажимаю кнопку сохранить - выходит ошибка "входная строка имела неверный формат". Что не так? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.11.2013, 13:43 |
|
Ошибка при очистки поля dataGridView
|
|||
---|---|---|---|
#18+
Tanya_0306... Что не так?А поле может принимать пустые (NULL) значения? К тому-же tynyint - это число... ... |
|||
:
Нравится:
Не нравится:
|
|||
09.11.2013, 20:32 |
|
Ошибка при очистки поля dataGridView
|
|||
---|---|---|---|
#18+
Alex Kuznetsov, Да. поле может принимать пустые значения. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.11.2013, 21:31 |
|
Ошибка при очистки поля dataGridView
|
|||
---|---|---|---|
#18+
Не понятная штука происходит с числовыми полями. Вот таблица CREATE TABLE [dbo].[Waybills]( [id] [int] IDENTITY(1,1) NOT NULL, [Gross] [numeric](16, 3) NULL, [Tara] [numeric](16, 3) NULL, [Warehouse] [varchar](25) NULL, [Humidity] [numeric](5, 2) NULL, [Impurity] [numeric](5, 2) NULL, [Net] [numeric](16, 3) NULL, [Lack] [numeric](16, 3) NULL, CONSTRAINT [PK_Waybills_1] PRIMARY ( [id] )) в datagridview ставлю числовым полям брутто тара нетто тип числовой в формате N3. Когда заполняю поле - все нормально. А если стираю значение - то при сохранении ошибка "входная строка имела неверный формат". ... |
|||
:
Нравится:
Не нравится:
|
|||
10.11.2013, 15:19 |
|
Ошибка при очистки поля dataGridView
|
|||
---|---|---|---|
#18+
Tanya_0306, Надо смотреть определение полей таблицы в объекте DataTable. Также надо смотреть определение столбцов в GridView. Нужно чтобы в GridView пустым значениям соответствующих столбцов присваивался Null. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.11.2013, 16:30 |
|
Ошибка при очистки поля dataGridView
|
|||
---|---|---|---|
#18+
Alex Kuznetsov Нужно чтобы в GridView пустым значениям соответствующих столбцов присваивался Null. Это значит в GridView прописать в свойстве столба NullValue значение Null ? А вот источник датасет на картинки ... |
|||
:
Нравится:
Не нравится:
|
|||
10.11.2013, 20:35 |
|
Ошибка при очистки поля dataGridView
|
|||
---|---|---|---|
#18+
Tanya_0306...Это значит в GridView прописать в свойстве столба NullValue значение Null ? Да, но не в GridView, а у источника данных. Первое мое утверждение про GridView было ошибочным. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.11.2013, 21:23 |
|
Ошибка при очистки поля dataGridView
|
|||
---|---|---|---|
#18+
такая фигня со всеми числовыми полями ...... ... |
|||
:
Нравится:
Не нравится:
|
|||
10.11.2013, 22:24 |
|
Ошибка при очистки поля dataGridView
|
|||
---|---|---|---|
#18+
Tanya_0306, c'est la vie... ... |
|||
:
Нравится:
Не нравится:
|
|||
11.11.2013, 09:00 |
|
Ошибка при очистки поля dataGridView
|
|||
---|---|---|---|
#18+
Alex Kuznetsov, Я поняла в чем проблема. Если поле с числовым типом данных пустое надо записать NULL. Как это сделать? Пробовала прикрутить к CellValidating Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9.
Так смотрю какое значение в ячейки и получается при стирании в гриде как будто еще старое значение проверяется на CellValidating. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.11.2013, 09:13 |
|
Ошибка при очистки поля dataGridView
|
|||
---|---|---|---|
#18+
Проблема решилась очень извращенным методом. Ставлю DBNull в свойствах колонки. Запускаю приложение. Потом стираю значение DBNull (чтоб на экране грида не было написано DBNull). И все работает! Ведать конструктор что-то прописал ... Интересно что .... ... |
|||
:
Нравится:
Не нравится:
|
|||
11.11.2013, 09:37 |
|
Ошибка при очистки поля dataGridView
|
|||
---|---|---|---|
#18+
Tanya_0306... Я поняла в чем проблема. Если поле с числовым типом данных пустое надо записать NULL. Как это сделать? Пробовала прикрутить к CellValidating skiped... Так смотрю какое значение в ячейки и получается при стирании в гриде как будто еще старое значение проверяется на CellValidating.Таня, в какой момент прописать? В CellValidating по идее прописываться ничего не должно - т.к. это проверка ввода... Пользователь должен сам изменять значения. Кроме того, правильным будет работать непосредственно с записью в наборе данных, а не со строкой в GridView... Если нужно сделать проверку введённых значений перед сохранением в базу - ну так и делайте её именно в этом месте. Тем не менее, при необходимости использования проверки на уровне GridView, воспользуйтесь приведённым примером , а также прочтите про обработку ошибок . ... |
|||
:
Нравится:
Не нравится:
|
|||
11.11.2013, 10:11 |
|
|
start [/forum/topic.php?fid=20&tid=1403710]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
68ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
43ms |
get tp. blocked users: |
1ms |
others: | 11ms |
total: | 170ms |
0 / 0 |