Sök…


Introduktion

Först måste vi veta vad en MessageBox är ...

MessageBox-kontrollen visar ett meddelande med specificerad text och kan anpassas genom att ange en anpassad bild, titel och knappuppsättningar (Dessa knappuppsättningar gör att användaren kan välja mer än ett grundläggande ja / nej-svar).

Genom att skapa vår egen MessageBox kan vi återanvända den MessageBox-kontrollen i alla nya applikationer bara genom att använda den genererade dll, eller kopiera filen som innehåller klassen.

Syntax

  • 'statisk DialogResult resultat = DialogResult.No; // DialogResult returneras av dialogrutor efter uppsägning. '

Skapa egna MessageBox-kontroll.

För att skapa vår egen MessageBox-kontroll följer du bara guiden nedan ...

  1. Öppna din instans av Visual Studio (VS 2008/2010/2012/2015/2017)

  2. Gå till verktygsfältet högst upp och klicka på File -> New Project -> Windows Forms Application -> Ge projektet ett namn och klicka sedan på OK.

  3. När du har laddat, dra och släpp en knappkontroll från verktygslådan (finns till vänster) på formuläret (som visas nedan).

ange bildbeskrivning här

  1. Dubbelklicka på knappen och den integrerade utvecklingsmiljön genererar automatiskt klickhändelseshanteraren åt dig.

  2. Redigera koden för formuläret så att det ser ut som följer (Du kan högerklicka på formuläret och klicka på Redigera 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");
        }
    }
}
  1. Lösning Explorer -> Högerklicka på ditt projekt -> Lägg till -> Windows Form och ställ in namnet som "CustomMsgBox.cs"

  2. Dra in en knapp & etikettkontroll från verktygslådan till formuläret (det ser ut som formen nedan efter att ha gjort det):

ange bildbeskrivning här

  1. Skriv nu koden nedan i den nyskapade formen:
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. Kör nu programmet genom att bara trycka på F5 Key. Grattis, du har gjort en återanvändbar kontroll.

Hur man använder egna skapade MessageBox-kontroller i ett annat Windows Form-program.

För att hitta dina befintliga .cs-filer, högerklicka på projektet i din instans av Visual Studio och klicka på Öppna mapp i File Explorer.

  1. Visual Studio -> Ditt nuvarande projekt (Windows-formulär) -> Lösningsutforskare -> Projektnamn -> Högerklicka -> Lägg till -> Befintligt objekt -> Hitta sedan din befintliga .cs-fil.

  2. Nu är det en sista sak att göra för att använda kontrollen. Lägg till ett användande uttalande till din kod så att din enhet vet om dess beroenden.

    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. För att visa meddelandelistan använder du bara följande ...

    CustomMsgBox.Show ("Ditt meddelande för meddelandelåda ...", "MSG", "OK");



Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow