• 🔥 Бесплатный курс от Академии Кодебай: «Анализ защищенности веб-приложений»

    🛡 Научитесь находить и использовать уязвимости веб-приложений.
    🧠 Изучите SQLi, XSS, CSRF, IDOR и другие типовые атаки на практике.
    🧪 Погрузитесь в реальные лаборатории и взломайте свой первый сайт!
    🚀 Подходит новичкам — никаких сложных предварительных знаний не требуется.

    Доступ открыт прямо сейчас Записаться бесплатно

откат Datagridview

  • Автор темы Автор темы Niceday
  • Дата начала Дата начала
N

Niceday

Вопрос простой, но честно сам найти ответ затрудняюсь

1
Код:
private void dataGridView1_UserDeletingRow(object sender, DataGridViewRowCancelEventArgs e)
{
DialogResult result;
result = MessageBox.Show("Are you sure?", "Product deleting", MessageBoxButtons.YesNo);
if (result == DialogResult.Yes)
{
//Здесь идет работа с MSQL (все нормально)
}
else
{
// а вот здесь надо остановить удаление... и оставить Row впокое, вопрос только как...
}
}

2
так же есть проблема с изменением Row
1ый вариант: сую обработку в изменение клетки, старые элементы таблицы сохраняются, но при добавление нового Row, возникает проблема с клетками в которых не может быть 0 (т.к. запрос на сохранение и эксцепшен выскакивают после изменения каждой клетки), но тут работает dataGridView1.CancelEdit(); в случае if (result != DialogResult.Yes)

2ой вариант (работает лучше)
в изменение клетки сунуть флаг, что что-то поменяли (rowchangedflag = 1;)
и при выборе другого Row если rowchangedflag == 1, выдавать запрос сохранить изменения или нет, но тут возникает проблема с CancelEdit(); (он ничего вообще не откатывает)
 
Посмотри свойства DataGridViewRowCancelEventArgs.
 
c 1 разобрался, спасибо
Код:
else
{
e.Cancel = true;
}

осталось 2ое :(
 
это было понятно еще когда писал на форуме, но спасибо что более ясно выразил мою мысль, что-то я неправильно делаю в обоих вариантах. я просто хочу выяснить какой из 2 вариантов лучше и как его довести до ума (нужно чтоб после изменения клетки в существующем row или полного заполнения нового, высаккивало сообщение сохранить изменения или нет (если нажали да, то как базу обновить я знаю, а вот при нажатии нет надо или клетку откатить или строку соответственно)
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab