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

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

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

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

Контроль ввода данных в DataGridView
Хотелось бы сделать следующее: 1. Запретить непосредственный ввод данных в поле даты и разрешить...

DatagridView-обработка ошибки ввода
Добрый день! Возникло два вопроса: 1) Данные вносятся через DatagridView (Связка...

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

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

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

3
Даценд
Модератор
Эксперт .NET
4533 / 4171 / 2740
Регистрация: 20.04.2015
Сообщений: 7,576
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
4533 / 4171 / 2740
Регистрация: 20.04.2015
Сообщений: 7,576
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
25.04.2016, 21:39
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.04.2016, 21:39

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

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

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


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

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

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