private void addButton_Click(object sender, EventArgs e) { // создать форму для внесения данных об операторе (Имя оператора) OperatorsEditPersonForm tmpForm = new OperatorsEditPersonForm(); tmpForm.Owner = this; // отображаем форму как диалог DialogResult dRes = tmpForm.ShowDialog(this); // если пользователь ввел имя (завершил работу с диалогом с утвердительным ответом) if (dRes == DialogResult.OK) { // получение данных с формы-диалога string operName = tmpForm.OperatorName.Trim(); if (_operatorBS.Find(Operator.name, operName) > 0) { MainForm.ShowInfoMessage("Пользователь с таким именем уже существует!", "Ошибка добавления оператора"); return; } // пароль пока пустой string operPassword = ""; //создание формы для указания пароля ChangePasswordForm changeForm = new ChangePasswordForm(); changeForm.Owner = this; changeForm.PasswordOld = operPassword; // отобразить форму для диалога dRes = changeForm.ShowDialog(this); // если пользователь ввел пароль (завершил работу с диалогом с утвердительным ответом) if (dRes == DialogResult.OK) { // считывается введенный пароль operPassword = changeForm.Password; // создание новой строки оператора DataRow newOperRow = _operatorTable.NewRow(); //начать редактирование newOperRow.BeginEdit(); // введение данных в запись newOperRow[Operator.id] = -(GetMaxID(_operatorTable, Operator.id) + 1); newOperRow[Operator.name] = operName; newOperRow[Operator.password] = operPassword; newOperRow[Operator.candelete] = 1; // принять редактирование newOperRow.EndEdit(); // добавить запись в таблицу _operatorTable.Rows.Add(newOperRow); // сделать активной добавленную запись _operatorBS.Position = _operatorBS.Find(Operator.id, newOperRow[Operator.id]); } } }
// открыть форму для смены пароля текущего оператора private void smenaparoliaMenuItem_Click(object sender, EventArgs e) { ChangePasswordForm tmpForm = new ChangePasswordForm(); if (_operator == null) { ShowInfoMessage("Сначала необходимо выбрать оператора", "Неопределен оператор"); return; } tmpForm.PasswordOld = _operator.passwordVal; tmpForm.Owner = this; // отобразить диалоговое окно для пользователя DialogResult dRes = tmpForm.ShowDialog(this); // если диалог закрыт с утвердительным ответом if (dRes == DialogResult.OK) { // принять новый пароль _operator.passwordVal = tmpForm.Password; _operator.SaveNewPassword(_mainConnection); } }
private void changepasswordButton_Click(object sender, EventArgs e) { // получить ссылку на активную запись "Оператора" DataRowView oper = _operatorBS.Current as DataRowView; // если ссылка пустая, выдать сообщение и прекратить выполнение метода if (oper == null) { MainForm.ShowInfoMessage("Сначала необходимо выбрать оператора", "Неопределен оператор"); return; } ChangePasswordForm tmpForm = new ChangePasswordForm(); // если оператор является Администратором, передать текущий пароль диалоговой форме if (0 == (int)oper[Operator.candelete]) { tmpForm.PasswordOld = oper[Operator.password] as string; } else { // иначе можно менять пароль пользователя не зная текущего пароля этого пользователя tmpForm.PasswordOld = ""; } tmpForm.Owner = this; // отобразить диалоговое окно для пользователя DialogResult dRes = tmpForm.ShowDialog(this); // если диалог закрыт с утвердительным ответом if (dRes == DialogResult.OK) { // принять новый пароль oper[Operator.password] = tmpForm.Password; oper.EndEdit(); } }