powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Контроль ввода данных в базу
3 сообщений из 3, страница 1 из 1
Контроль ввода данных в базу
    #38253598
tumanovalex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Хотелось бы сделать следующее:
1. Запретить непосредственный ввод данных в поле даты и разрешить ввод данных только из календаря
2. Проверить значении, вводимое в числовое поле, и заменить системное сообщение об ошибке своим сообщением.
Подскажите, пожалуйста, как это сделать. Я пытался по пункту 2 сделать так:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
private void dgv1_CellValidating(object sender, DataGridViewCellValidatingEventArgs e)
{
  if (e.ColumnIndex == 3 && dgv1.CurrentCell.Value.ToString() != "")
  {
    int num;
    Boolean bl = int.TryParse(dgv1.CurrentCell.Value.ToString(), out num);
    if (bl == false)
    {
      MessageBox.Show("Введенные данные не соответствуют формату числа!", "Программа для изучения C#", MessageBoxButtons.OK);
    }
  }
}

но получается ерунда: если вводить в числовое поле числа - то все нормально работает, а если вводить строки, то появляется системное сообщение.
Если e.ColumnIndex == 3 && dgv1.CurrentCell.Value.ToString() != "" заменить на e.ColumnIndex == 3, то при первом же щелчке на поле появляется мое сообщение об ошибке, поскольку значение ячейки пустое. Проект без моих неправильных функций прикрепляю.
...
Рейтинг: 0 / 0
Контроль ввода данных в базу
    #38253949
Narvasadata
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
tumanovalex,

По второму пункту:

private void dgv1_DataError(object sender, DataGridViewDataErrorEventArgs e)
{
MessageBox.Show("123","123", MessageBoxButtons.OK);
}
...
Рейтинг: 0 / 0
Контроль ввода данных в базу
    #38253950
Narvasadata
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
tumanovalex,

А по первому в FormLoad допиши строчку

dgv1.Columns[2].ReadOnly = true;
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Контроль ввода данных в базу
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]