C# Language
Tworzenie własnego MessageBox w aplikacji Windows Form
Szukaj…
Wprowadzenie
Najpierw musimy wiedzieć, czym jest MessageBox ...
Formant MessageBox wyświetla komunikat z określonym tekstem i można go dostosować, określając niestandardowy obraz, tytuł i zestawy przycisków (te zestawy przycisków pozwalają użytkownikowi wybrać więcej niż podstawową odpowiedź tak / nie).
Tworząc własny MessageBox, możemy ponownie użyć tego formantu MessageBox we wszystkich nowych aplikacjach, po prostu używając wygenerowanej biblioteki DLL lub kopiując plik zawierający klasę.
Składnia
- 'statyczny wynik DialogResult = DialogResult.No; // DialogResult jest zwracany przez okna dialogowe po zwolnieniu. '
Tworzenie własnej kontrolki MessageBox.
Aby utworzyć własną kontrolkę MessageBox, postępuj zgodnie z poniższym przewodnikiem ...
Otwórz instancję programu Visual Studio (VS 2008/2010/2012/2015/2017)
Przejdź do paska narzędzi u góry i kliknij Plik -> Nowy projekt -> Aplikacja Windows Forms -> Nadaj projektowi nazwę, a następnie kliknij OK.
Po załadowaniu przeciągnij i upuść formant przycisku z Przybornika (znajdujący się po lewej stronie) na formularz (jak pokazano poniżej).
Kliknij dwukrotnie przycisk, a zintegrowane środowisko programistyczne automatycznie wygeneruje procedurę obsługi zdarzenia kliknięcia.
Edytuj kod formularza, aby wyglądał następująco (Możesz kliknąć formularz prawym przyciskiem myszy i kliknąć Edytuj kod):
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");
}
}
}
Solution Explorer -> Kliknij projekt prawym przyciskiem myszy -> Dodaj -> Windows Form i ustaw nazwę jako „CustomMsgBox.cs”
Przeciągnij przycisk i kontrolkę etykiety z Przybornika do formularza (po wykonaniu będzie wyglądał podobnie do poniższego formularza):
- Teraz napisz poniższy kod do nowo utworzonego formularza:
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();
}
- Teraz uruchom program, naciskając klawisz F5. Gratulacje, masz kontrolę wielokrotnego użytku.
Jak używać własnej kontrolki MessageBox w innej aplikacji Windows Form.
Aby znaleźć istniejące pliki .cs, kliknij prawym przyciskiem myszy projekt w instancji programu Visual Studio, a następnie kliknij polecenie Otwórz folder w Eksploratorze plików.
Visual Studio -> Twój bieżący projekt (formularz Windows) -> Eksplorator rozwiązań -> Nazwa projektu -> Kliknij prawym przyciskiem myszy -> Dodaj -> Istniejący element -> Następnie zlokalizuj istniejący plik .cs.
Teraz jest ostatnia rzecz do zrobienia, aby użyć kontroli. Dodaj instrukcję using do swojego kodu, aby twój zespół wiedział o swoich zależnościach.
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.
Aby wyświetlić okno komunikatu, po prostu użyj następujących ...
CustomMsgBox.Show („Twoja wiadomość do skrzynki wiadomości ...”, „MSG”, „OK”);