Поиск…


Вступление

Сначала нам нужно знать, что такое MessageBox ...

Элемент управления MessageBox отображает сообщение с указанным текстом и может быть настроено путем указания пользовательских изображений, заголовков и кнопок (эти наборы кнопок позволяют пользователю выбирать более простой ответ «да / нет»).

Создавая собственный MessageBox, мы можем повторно использовать этот MessageBox Control в любых новых приложениях, просто используя сгенерированную dll или скопировав файл, содержащий класс.

Синтаксис

  • 'статический результат DialogResult = DialogResult.No; // DialogResult возвращается по диалогам после увольнения. '

Создание собственного элемента управления MessageBox.

Чтобы создать собственный элемент управления MessageBox, просто следуйте приведенному ниже руководству ...

  1. Откройте экземпляр Visual Studio (VS 2008/2010/2012/2015/2017)

  2. Перейдите на панель инструментов вверху и нажмите «Файл» -> «Новый проект» -> «Приложение Windows Forms» -> Дайте проекту имя и нажмите «ОК».

  3. После загрузки перетащите элемент управления Button из панели инструментов (находится слева) в форму (как показано ниже).

введите описание изображения здесь

  1. Дважды щелкните по кнопке, и интегрированная среда разработки автоматически создаст для вас обработчик событий кликов.

  2. Измените код формы, чтобы он выглядел следующим образом (вы можете щелкнуть правой кнопкой мыши форму и нажать «Изменить код»):

namespace MsgBoxExample {
    public partial class MsgBoxExampleForm : Form {
        //Constructor, called when the class is initialised.
        public MsgBoxExampleForm() {
            InitializeComponent();
        }

        //Called whenever the button is clicked.
        private void btnShowMessageBox_Click(object sender, EventArgs e) {
           CustomMsgBox.Show($"I'm a {nameof(CustomMsgBox)}!", "MSG", "OK");
        }
    }
}
  1. Обозреватель решений -> Щелкните правой кнопкой мыши по вашему проекту -> Добавить -> Форма Windows и укажите имя как «CustomMsgBox.cs»

  2. Перетащите кнопку и управление меткой из панели инструментов в форму (после этого она будет выглядеть примерно так:

введите описание изображения здесь

  1. Теперь выпишите код ниже во вновь созданную форму:
private DialogResult result = DialogResult.No;
public static DialogResult Show(string text, string caption, string btnOkText) {
    var msgBox = new CustomMsgBox();
    msgBox.lblText.Text = text; //The text for the label...
    msgBox.Text = caption; //Title of form
    msgBox.btnOk.Text = btnOkText; //Text on the button
    //This method is blocking, and will only return once the user
    //clicks ok or closes the form.
    msgBox.ShowDialog(); 
    return result;
}

private void btnOk_Click(object sender, EventArgs e) {
    result = DialogResult.Yes;
    MsgBox.Close();
}
  1. Теперь запустите программу, просто нажав клавишу F5. Поздравляем, вы сделали многоразовый контроль.

Как использовать собственный созданный элемент управления MessageBox в другом приложении Windows Form.

Чтобы найти существующие файлы .cs, щелкните правой кнопкой мыши проект в вашем экземпляре Visual Studio и выберите «Открыть папку» в Проводнике.

  1. Visual Studio -> Ваш текущий проект (Windows Form) -> Обозреватель решений -> Название проекта -> Щелкните правой кнопкой мыши -> Добавить -> Существующий элемент -> Затем найдите существующий файл .cs.

  2. Теперь есть еще одна вещь, чтобы использовать этот элемент управления. Добавьте в свой код инструкцию using, чтобы ваша сборка узнала о ее зависимостях.

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    .
    .
    .
    using CustomMsgBox; //Here's the using statement for our dependency.
    
  3. Чтобы отобразить сообщение, просто используйте следующие ...

    CustomMsgBox.Show («Ваше сообщение для окна сообщений ...», «MSG», «ОК»);



Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow