Здравствуйте. Итак, я делаю текстовый редактор и имею две функции, которые я вызываю при нажатии на разные кнопки в моем GUI. Поэтому я вызываю свою функцию «NewTextbutton» в функции «CloseToolStripMenuItem». То, что я хочу, - это если пользователь нажимает на кнопку «Отмена», моя программа не должна закрываться. Я могу получить возвращаемое значение из функции, а затем с помощью проверки состояния, если пользователь нажал «Отмена» или нет. Но я получаю ошибку, что не могу преобразовать Void в int. Может кто-нибудь, пожалуйста, помогите. Спасибо.
private int NewTextbutton_Click(object sender, EventArgs e)
{
if (TextBox.TextLength==0)
{
TextBox.Clear();
return 0;
}
else
{
if (this.Text.Contains("*"))
{
var result = MessageBox.Show("Do you want to save changes to the document?",
"Texteditor",
MessageBoxButtons.YesNoCancel,
MessageBoxIcon.Question);
if (result == DialogResult.Yes)
{
SaveTextbutton.PerformClick();
TextBox.Clear();
this.Text = $"Texteditor dok1.txt";
P = "";
return 0;
}
else if (result == DialogResult.Cancel)
{
return 1;
}
else
{
TextBox.Clear();
return 0;
}
}
TextBox.Clear();
this.Text = $"Texteditor dok1.txt";
P = "";
return 0;
}
}
private void closeToolStripMenuItem_Click(object sender, EventArgs e)
{
int a = NewTextbutton.PerformClick(); //here is the error "cannot convert void to int"
if (a == 1)
{
MessageBox.Show("operation Canceled");
}
else
{
Application.Exit();
}
}