Looking for c# Keywords? Try Ask4Keywords

C# Language Создание собственного элемента управления 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. Поздравляем, вы сделали многоразовый контроль.