в течение нескольких часов я сталкиваюсь с этой странной (по крайней мере для меня) проблемой с вставкой данных в локальную базу данных в WinForms.Я создал две формы.Одна форма представляет собой меню с кнопками, такими как «Добавить», «Редактировать», «Удалить» и с сеткой просмотра.После нажатия кнопки «Добавить» появляется другая форма с некоторыми текстовыми полями, которые мне нужно заполнить, и кнопкой «Сохранить», которая должна сохранять введенные данные в базу данных.
Я намеревался создать персонализированный органайзер для моегоДядя небольшой компании в качестве упражнения, где вы можете добавить клиентов (полное имя, номер телефона, тип автомобиля, проблема и дата принятия).Когда я пытаюсь добавить нового клиента - новая строка вставляется в базу данных.После заполнения текстовых полей и нажатия кнопки «Сохранить» данные должны быть зафиксированы и обновлены в базе данных, но этого никогда не происходит, я не знаю почему.Код компилируется без ошибок, попытался отладить, но не смог найти ничего, что помогло бы мне с этой проблемой.На самом деле, если я приведу этот код только в одну форму, он работает как шарм, но когда он «разделен» на 2 формы, он не хочет сотрудничать.Я действительно не могу делать какие-либо операции с базой данных из другой формы.Кажется, что есть какая-то проблема со ссылками или привязкой данных, с которой я новичок.
Есть код кнопки формы 1:
private void addButton_Click(object sender, EventArgs e)
{
using (var addForm = new addForm())
{
appData.customerTable.AddcustomerTableRow(appData.customerTable.NewcustomerTableRow());
customerTableBindingSource.MoveLast();
addForm.ShowDialog();
}
}
И есть форма 2 - проблемная:
private void saveButton_Click(object sender, EventArgs e)
{
try
{
if(MessageBox.Show("Czy chcesz zakończyć edycję?", "Pytanie", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
{
customerTableBindingSource.EndEdit();
customerTableTableAdapter.Update(appData.customerTable);
addFormCloseTimer.Start();
}
else
{
// do nothing
}
}
catch(Exception ex)
{
MessageBox.Show(ex.Message, "Błąd podczas dodawania", MessageBoxButtons.OK, MessageBoxIcon.Error);
appData.customerTable.RejectChanges();
}
}
}
На самом деле я думаю, что эту проблему можно решить очень просто, но после многих часов работы в интернете я сдался.Я буду очень признателен за любую помощь!