20.2 Вывод в окно сообщения
Окно сообщения используется для привлечения внимания пользователя.
Программа может проинформировать об ошибке в исходных данных или запросить подтверждение выполнения необратимой операции, например удаление файла или вычисления при не корректных данных.
Функция MessageBox() выводит на экран окно с текстом и командной кнопкой ОК.
Кроме того, она позволяет поместить в окно с сообщением:
- один из стандартных значков (х, ?, !, i),
- количество и тип командных кнопок,
- определить, какую из кнопок нажал пользователь.
Формат вызова:
MessageBox.Show (Сообщение, Заголовок, Кнопки, Тип),
где Сообщение– текст, который будет выведен в окне;
Заголовок – текст в строке заголовка окна;
Кнопки –список кнопок, отображаемых в окне сообщения;
Тип– тип сообщения (информация, предупреждение, ошибка – каждому соответствует свой значок) указывающий какой из значков будет отображен в окне
Тип сообщения задается именной константой, приведенной в таблице.
Разные типы сообщения имеют разные значки.
Таблица
|
Константа |
Тип сообщения |
Значок |
|
Warning Error Information Question |
Внимание Ошибка Информация Подтверждение |
! х i ? |
Пример1: MessageBox.Show("Надо вводить цифры"); //1 аргумент без значка

Пример2: MessageBox.Show("Функция не определена","Вычисления"); // 2 аргумента

Пример3:
MessageBox.Show("Сумма к оплате: "+" S= " + String.Format("{0,8:f2}", S) + " руб.", "Стоимость "); // 2 аргумента

Сообщениеполучено путем объединения нескольких строк:
"Сумма к оплате: "+ " S= " + String.Format("{0,8:f2}", S) + " руб."
Заголовок окна Стоимость.
Пример4: MessageBox.Show("Функция не определена", "Вычисления", MessageBoxButtons.OK, MessageBoxIcon.Information); // 4 аргумента

Пример расчета покупки деталей:
private void button1_Click(object sender, EventArgs e)
{
try //охраняемый блок
{
double cena = double.Parse(textBox1.Text); // преобразование в вещественное
int kol = int.Parse(textBox2.Text); // преобразование в целое число
double S = cena * kol; // расчет стоимости
DialogResult rsl = MessageBox.Show("Рассчитать сумму к оплате?: ", "Оплата", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
if (rsl == DialogResult.Yes)// подтверждение
{
label1.Text = "S= " + String.Format("{0,8:f2}", S) + " руб.";
}
}
catch //перехватчик исключения
{
MessageBox.Show("Надо вводить цифры ", "Ошибочный ввод данных", MessageBoxButtons.OK, MessageBoxIcon.Warning); // внимание
}
}

21.0 Процедуры и функции
При написании программ в C# программист разрабатывает процедуры обработки событий, вызов которых берет на себя ИСП.
Пользователь может разработать свои собственные процедуры и функции, которые представляют собой последовательность инструкций, предназначенных для выполнения некоторой работы. Чтобы ее выполнить, надо вызвать подпрограмму.
