- Регистрация
- 04.01.2019
- Сообщения
- 112
- Благодарностей
- 7
- Баллы
- 18
Добрый день в этом разделе (https://zennolab.com/discussion/threads/pomogite-vyzvat-vsplyvajuschee-okno-dlja-vvoda-koda-iz-sms.53170/#post-396783) пользователь создал форму для работы с собственными сим картами, но она на 2 кнопки (ОК и Отмена), хочу сделать третью кнопку "Выслать код повторно" но не знаю как сделать по сколько не знаю C#, саму кнопку сделал но не знаю как ее привязать к действию выслать код повторно. И еще хотел сделать что бы при вводе кода смс в саму форму можно было подтверждать отправку кнопкой Enter, нашел какой код С# нужно вставить , но он не срабатывает почему-то. Если есть опытные пользователи можете подсказать что сделать и в каком направлении двигаться ?
Первоначальный код:
Мой код с добавленной кнопкой
Первоначальный код:
Код:
// создаём форму с указанным значением
var dialogForm = new System.Windows.Forms.Form { Size = new Size(203, 110), ShowIcon = false, Name = "DialogForm", Text = @"Введите смс код",
FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog, MinimizeBox = false, MaximizeBox = false };
// поле ввода
var textBox = new System.Windows.Forms.TextBox { Name = "InputText", Size = new Size(165, 20) };
// кладём не форму
dialogForm.Controls.Add(textBox);
// положение на форме
textBox.Location = new Point(12, 12);
// кнопка ok
var okButton = new System.Windows.Forms.Button { Name = "OKButton", Text = @"OK", Size = new Size(75, 23) };
// кладём не форму
dialogForm.Controls.Add(okButton);
// положение на форме
okButton.Location = new Point(20, 38);
// обработка события
okButton.Click += (delegate { dialogForm.DialogResult = System.Windows.Forms.DialogResult.OK; });
// кнопка отмены
var cancelButton = new System.Windows.Forms.Button { Name = "CancelButton", Text = @"Отмена", Size = new Size(75, 23)};
// кладём не форму
dialogForm.Controls.Add(cancelButton);
// положение на форме
cancelButton.Location = new Point(100, 38);
// обработка события
cancelButton.Click += (delegate { dialogForm.DialogResult = System.Windows.Forms.DialogResult.Cancel; });
// показываем форму
var dialogResult = dialogForm.ShowDialog();
// если не было отмены диалога
if (dialogResult != System.Windows.Forms.DialogResult.Cancel) return project.Variables["sms"].Value = textBox.Text.ToString();
project.SendErrorToLog("","Данные не введены",true);
throw new Exception ("Данные не введены");
Код:
// создаём форму с указанным значением
var dialogForm = new System.Windows.Forms.Form { Size = new Size(370, 150), ShowIcon = false, Name = "DialogForm", Text = @"Введите смс код",
FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog, MinimizeBox = false, MaximizeBox = false };
// поле ввода
var textBox = new System.Windows.Forms.TextBox { Name = "InputText", Size = new Size(320, 20) };
// кладём не форму
dialogForm.Controls.Add(textBox);
// положение на форме
textBox.Location = new Point(20, 20);
// кнопка ok
var okButton = new System.Windows.Forms.Button { Name = "OKButton", Text = @"OK", Size = new Size(75, 23) };
// кладём не форму
dialogForm.Controls.Add(okButton);
F.AcceptButton= button; //Вызываем кнопку по ентеру (ПОЧЕМУ НЕ РАБОТАЕТ?)
// положение на форме
okButton.Location = new Point(20, 50);
// обработка события
okButton.Click += (delegate { dialogForm.DialogResult = System.Windows.Forms.DialogResult.OK; });
// кнопка отмены
var cancelButton = new System.Windows.Forms.Button { Name = "CancelButton", Text = @"Отмена", Size = new Size(75, 23)};
// кладём не форму
dialogForm.Controls.Add(cancelButton);
// положение на форме
cancelButton.Location = new Point(100, 50);
// обработка события
cancelButton.Click += (delegate { dialogForm.DialogResult = System.Windows.Forms.DialogResult.Cancel; });
// Кнопка высладь код павторно
var kodButton = new System.Windows.Forms.Button { Name = "Kod", Text = @"Выслать код повторно.", Size = new Size(140, 23) };
// кладём не форму
dialogForm.Controls.Add(kodButton);
// положение на форме
kodButton.Location = new Point(200, 50);
// обработка события
kodButton.Click += (delegate { dialogForm.DialogResult = System.Windows.Forms.DialogResult.Cancel; });
// показывем форму
var dialogResult = dialogForm.ShowDialog();
// если не было отмены
if (dialogResult != System.Windows.Forms.DialogResult.Cancel) return project.Variables["sms"].Value = textBox.Text.ToString();
project.SendErrorToLog("","Данные не введены",true);
throw new Exception ("Данные не введены");