Winforms: Sådan oprettes og vises en inputdialogboks

Winforms: Sådan oprettes og vises en inputdialogboks

Det er almindeligt, at desktop-applikationer bruger dialogbokse, når de beder om oplysninger fra brugeren. Du kan oprette inputdialogbokse i et Windows Forms-program ved at vise et nyt vindue.





Du kan også tilføje UI-elementer til det nye dialogvindue. Disse omfatter beskeder, tekstbokse og knapper 'Ok' og 'Annuller'. Når brugeren indtaster oplysninger i inputfeltet, kan du gemme resultatet og bruge det i andre dele af appen.





MAKEUSE AF DAGENS VIDEO

Sådan opretter du en On-Click-funktion for at udløse inputdialogboksen

Dialogboksen bør ikke altid være synlig. Du kan udløse dialogboksen for at vise, når brugeren fuldfører en handling, såsom et knapklik. Du kan også lære mere om andre Windows Forms-begivenheder som du kan bruge i en Windows Forms-app.





Tilføj en knap til lærredet og opret en funktion, der kører, når brugeren klikker på knappen.

hvordan man oplader en computer uden oplader
  1. Lave en ny Windows Forms-applikation i Visual Studio.
  2. I værktøjskassen skal du søge efter en knap UI-kontrol.
  3. Klik og træk en knap til lærredet.   Ændrede egenskaber for knap på Winforms lærred
  4. I egenskabsvinduet skal du ændre egenskaberne for knappen til følgende nye værdier:
    Navn dialogknap
    Størrelse 400, 100
    Tekst Åbn Input Dialog
      Tilføjet etiket til Winforms app-lærred
  5. I værktøjskassen skal du klikke og trække en etiket til lærredet. Placer etiketten til højre for knappen.
  6. I egenskabsvinduet skal du ændre egenskaberne for etiketten til følgende værdier:
    Navn labelResponseInput
    Synlig Falsk
  7. Dobbeltklik på den nye Input Dialog-knap. Dette vil generere en on-click-funktion i koden bag CS-filen for formen.
    private void dialogButton_Click(object sender, EventArgs e) 
    {
    // The code here will trigger when the user clicks on the button
    // It will display the input dialog box
    }

Sådan opretter du input-dialogboksen

Opret dialogboksen inde i en ny funktion. Funktionen vil programmatisk oprette en ny formular og tilføje UI-elementer til den, inklusive en tekstboks med knapperne 'Ok' og 'Annuller'.



  1. Under dialogButton_Click() funktion, skal du oprette en ny funktion, der vil oprette dialogboksen Input. 'Titel'-parameteren vises i øverste venstre hjørne af vinduet. Værdien for 'promptText' vises for brugeren. 'Værdi'-parameteren er en ud-parameter og returnerer den værdi, som brugeren har indtastet i inputboksen.
    public static DialogResult InputBox(string title, string promptText, ref string value) 
    {
    }
  2. Inde i InputBox() funktion, skal du oprette de UI-elementer, der vises på formularen.
    Form form = new Form(); 
    Label label = new Label();
    TextBox textBox = new TextBox();
    Button buttonOk = new Button();
    Button buttonCancel = new Button();
  3. Tilføj titlen på formularen, som vises i øverste venstre hjørne. Tilføj også hovedmeddelelsen, der vil blive vist for brugeren, over inputboksen.
    form.Text = title; 
    label.Text = promptText;
  4. Tilføj værdier for knapperne 'Ok' og 'Annuller'. Tekstegenskaben indeholder den tekst, der vises øverst på hver knap. Egenskaben DialogResult indeholder den type resultat, som knappen repræsenterer. Du kan læse mere om DialogResult på Microsofts officielle dokumentation
    buttonOk.Text = "OK"; 
    buttonCancel.Text = "Cancel";
    buttonOk.DialogResult = DialogResult.OK;
    buttonCancel.DialogResult = DialogResult.Cancel;
    .
  5. Brug SetBounds() metode til at indstille x- og y-positionerne for etiketten, tekstboksen og knapperne på formularen. Du kan også angive hvert elements bredde og højde.
    label.SetBounds(36, 36, 372, 13); 
    textBox.SetBounds(36, 86, 700, 20);
    buttonOk.SetBounds(228, 160, 160, 60);
    buttonCancel.SetBounds(400, 160, 160, 60);
  6. Konfigurer nogle egenskaber for selve dialogvinduet. Disse egenskaber angiver formularstørrelsen, kanterne og startpositionen. Det styrer også muligheden for at minimere eller maksimere vinduet eller ændre størrelsen på etiketten, hvis det er nødvendigt.
    label.AutoSize = true; 
    form.ClientSize = new Size(796, 307);
    form.FormBorderStyle = FormBorderStyle.FixedDialog;
    form.StartPosition = FormStartPosition.CenterScreen;
    form.MinimizeBox = false;
    form.MaximizeBox = false;
  7. Tilføj UI-elementerne til den nye formular, og indstil formularens accept- og annulleringsknapper til de tidligere oprettede knapobjekter.
    form.Controls.AddRange(new Control[] { label, textBox, buttonOk, buttonCancel }); 
    form.AcceptButton = buttonOk;
    form.CancelButton = buttonCancel;
  8. Vis det nyoprettede dialogvindue til brugeren.
    DialogResult dialogResult = form.ShowDialog();
  9. Gem den værdi, som brugeren har indtastet i tekstboksen. Returner resultatet af formularen, som enten ville være 'Ok' eller 'Annuller', baseret på den knap, brugeren klikker på.
    value = textBox.Text; 
    return dialogResult;

Sådan bruger du input-dialogboksen

For at bruge input-dialogboksen skal du kalde InputBox() funktion inde i dialogButton_Click() fungere. Når brugeren klikker på knappen 'Åbn inputdialog', vil den vise dialogboksen.

  1. Inde i dialogButton_Click() funktion, skal du oprette en variabel for at gemme den værdi, som brugeren indtaster i tekstboksen. Denne værdi kommer fra parameteren 'værdi' ud.
    string value = "";
  2. Vis dialogboksen ved at kalde InputBox() fungere. Tjek, om brugeren klikker på 'Ok'-knappen, og hvis det er tilfældet, tilføj noget tekst på skærmen for at vise svaret tilbage til brugeren.
    if (InputBox("Dialog Box", "What is your name?", ref value) == DialogResult.OK) 
    {
    labelResponseInput.Visible = true;
    labelResponseInput.Text = "Your name: " + value;
    }

Sådan får du vist Input Dialog Pop Up

Kør programmet og udløs dialogboksen.





  1. Klik på den grønne afspilningsknap øverst i Visual Studio-vinduet.
  2. Klik på Åbn Input Dialog knappen for at vise dialogboksen.
  3. Indtast et navn i tekstboksen og klik på Okay knap. Dialogboksen lukkes og viser de resultater, der er indtastet i tekstboksen.
  4. Klik på Åbn Input Dialog knappen igen for at genåbne dialogboksen.
  5. Klik på Afbestille knappen for at lukke dialogboksen. Dette annullerer dialogboksen uden at udføre nogen handlinger eller opdatere brugergrænsefladen.

Tilføjelse af indhold og UI-elementer til din Windows-formularapplikation

Du kan oprette input-dialogbokse i et Windows Forms-program og vise dem til brugeren, når visse hændelser sker. Du kan oprette et nyt dialogvindue ved at oprette en ny formular. Du kan derefter tilføje nye UI-elementer til det, såsom etiketter, tekstbokse eller knapper.

Når brugeren har indtastet de påkrævede oplysninger, kan du lukke indtastningsfeltet og gemme de oplysninger, de har indtastet.





Hvis du vil tilføje mere indhold til din UI eller dialogboks, kan du undersøge, hvordan du tilføjer andre UI-elementer. Dette omfatter elementer såsom figurer eller billeder.