Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Разработка Windows Forms > DataGridView и числовые значения


Автор: FREEDEV 12.10.2007, 12:54
Необходимо разрешить пользователю вводить только числовые значения в DataGridView
Стандартными возможностями грида не нашел как сделать, поэтому обрабатываю от него CellEndEdit
если введенное значение не соответствует, нужно вернуться в измененною строку и выставить её на редактирование. Вот как это можно сделать ?

Автор: HAL707 12.10.2007, 13:21
Используй CancelEdit.

Автор: CYBERDREAM 12.10.2007, 13:27
Тут глянь, вроде есть нечто подобное:
http://www.rsdn.ru/article/dotnet/DataGridView20part2.xml#EDE

Автор: FREEDEV 12.10.2007, 13:35
HAL707,  не работает

нашел datagridPoints.BeginEdit(true); , но он редактирует CurrentCell ячейку, это последняя выделенная

при попытке установить
datagridPoints.CurrentCell = datagridPoints.Rows[i].Cells[0];

Получаю InvalidOperationException was unhandled ( Operation is not valid because it results in a reentrant call to the SetCurrentCellAddressCore function.)

Автор: 1stain 12.10.2007, 13:41
используй CellValidating & RowValidating

Автор: FREEDEV 12.10.2007, 14:09
Цитата(1stain @ 12.10.2007,  13:41)
используй CellValidating & RowValidating

что это мне даст, я по CellEndEdit знаю что редактирование завершилось  smile 

Автор: 1stain 12.10.2007, 14:13
Цитата(FREEDEV @  12.10.2007,  14:09 Найти цитируемый пост)
что это мне даст, я по CellEndEdit знаю что редактирование завершилось  

забей на CellEndEdit и попробуй CellValidating  smile 

Автор: FREEDEV 12.10.2007, 14:41
CellValidating отрабатывает раньше CellEndEdit и значения ячейки в этот момент то что было до изменения- проверять нечего :(

Автор: FREEDEV 15.10.2007, 10:45
Решил вопрос, так и не смог правильно выставить ячейку на редактирование - поступил иначе.
http://forum.vingrad.ru/s/d931fa64d93967eeb67702c57dbc3833/topic-126857.html

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)