Форум программистов, компьютерный форум, киберфорум
C#: Базы данных, ADO.NET
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
6 / 6 / 1
Регистрация: 20.12.2010
Сообщений: 392
1

Ограничения ввода в DataGridView

25.04.2016, 21:01. Просмотров 1453. Ответов 3
Метки нет (Все метки)

Необходимо, чтобы при редактировании (или вводе) значений в ячейках DataGridView, имеющих определённую маску ("00.00.0000") производилась проверка на правильность значений. К примеру, при значении "54.56.7830" должно выдаваться сообщение о неправильности ввода, ячейку покинуть невозможно и пользователь должен заново ввести значение в эту ячейку, а при значении "25.04.2016" можно спокойно перейти на следующую ячейку.
Пытаюсь конвертнуть значение ячейки грида в DateTime, обрабатываю это в событиях CellValueChanged и CellValidating, но это не работает...
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
25.04.2016, 21:01
Ответы с готовыми решениями:

Ограничения ввода в строках
Заимствовал код, появился вопрос как реализовать ограничения слова в 5 символов и именно латинскими...

Ограничения ввода в едит
Здравствуйте! Вот никак не могу сделать вывод ошибки при вводе в поле едит! Нужно сделать так: Если...

Ограничения в языке ввода
можно ли создать ограничения, чтобы пользователь в консоли писал только на английском языке и...

Ограничения на ввод данных в DataGridView
Здравствуйте. Прошу помощи, я в программировании новичок(а с С# столкнулась впервые). Подскажите...

3
Модератор
Эксперт .NET
5360 / 4516 / 2886
Регистрация: 20.04.2015
Сообщений: 8,173
25.04.2016, 21:12 2
Лучший ответ Сообщение было отмечено Кротяка как решение

Решение

Кротяка,
C#
1
2
3
4
5
6
7
8
private void dataGridView1_CellValidating(object sender, DataGridViewCellValidatingEventArgs e)
{
    DateTime date;
    if (!DateTime.TryParse(e.FormattedValue.ToString(), out date))
    {
        e.Cancel = true;
    }
}
1
6 / 6 / 1
Регистрация: 20.12.2010
Сообщений: 392
25.04.2016, 21:25  [ТС] 3
Даценд, Благодарю!
А как здесь же задать ограничение, чтобы вводимая дата не превышала текущую?
0
Модератор
Эксперт .NET
5360 / 4516 / 2886
Регистрация: 20.04.2015
Сообщений: 8,173
25.04.2016, 21:39 4
как-то так:
C#
1
2
3
4
5
6
7
8
private void dataGridView1_CellValidating(object sender, DataGridViewCellValidatingEventArgs e)
{
    DateTime date;
    if (!DateTime.TryParse(e.FormattedValue.ToString(), out date) | date > DateTime.Now)
    {
        e.Cancel = true;
    }
}
2
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.04.2016, 21:39

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

DataGridView ограничения только цифры
Доброго времени суток, подскажите пжл, как ограничить ввод только цифр double в VS C++/CLI,...

Триггер для ограничения ввода записей в таблицу
Здравствуйте! Делаю базу данных больница, в ней есть таблица Лечение (Lechenie),куда я добавляю...

Разные ограничения ввода для разных Edit-ов
Всем привет. Подскажите пожалуйста как сделать так что бы разные ограничения ввода были сделаны...

Можно ли задать ограничения для итератора потока ввода?
Изучая c++, наткнулся на такой способ заполнения вектора из потока. istream_iterator< int >...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.