Det är vanligt att skrivbordsprogram använder dialogrutor när användaren uppmanas att få information. Du kan skapa inmatningsdialogrutor i ett Windows Forms-program genom att visa ett nytt fönster.

Du kan också lägga till UI-element i det nya dialogfönstret. Dessa inkluderar meddelanden, textrutor och "Ok" och "Avbryt"-knappar. När användaren anger information i inmatningsrutan kan du lagra resultatet och använda det i andra delar av appen.

Hur man skapar en On-Click-funktion för att utlösa inmatningsdialogrutan

Dialogrutan ska inte alltid vara synlig. Du kan aktivera dialogrutan för att visa när användaren slutför en åtgärd, till exempel ett knappklick. Du kan också lära dig mer om andra Windows Forms-händelser som du kan använda i en Windows Forms-app.

Lägg till en knapp på arbetsytan och skapa en funktion som körs när användaren klickar på knappen.

  1. Skapa en nya Windows Forms-applikationen i Visual Studio.
  2. Sök efter en knapp UI-kontroll i verktygslådan.
  3. Klicka och dra en knapp till arbetsytan.
  4. instagram viewer
  5. I egenskapsfönstret ändrar du egenskaperna för knappen till följande nya värden:
    Egendomsnamn Nytt värde
    namn dialogknapp
    Storlek 400, 100
    Text Öppna Inmatningsdialogrutan
  6. I verktygslådan klickar du och drar en etikett till arbetsytan. Placera etiketten till höger om knappen.
  7. I egenskapsfönstret ändrar du egenskaperna för etiketten till följande värden:
    Egendomsnamn Nytt värde
    namn labelResponseInput
    Synlig Falsk
  8. Dubbelklicka på den nya inmatningsdialogknappen. Detta genererar en klickfunktion i CS-filen bakom koden för formuläret.
    privattomhetdialogButton_Click(objektavsändare, EventArgs e)
    {
    // Koden här utlöses när användaren klickar på knappen
    // Det kommer att visa inmatningsdialogrutan
    }

Hur man skapar inmatningsdialogrutan

Skapa dialogrutan i en ny funktion. Funktionen kommer programmatiskt att skapa ett nytt formulär och lägga till UI-element till det, inklusive en textruta med "Ok" och "Avbryt" knappar.

  1. Under dialogButton_Click() skapa en ny funktion som skapar dialogrutan Inmatning. "Titel"-parametern visas i det övre vänstra hörnet av fönstret. Värdet för "promptText" visas för användaren. "Värde"-parametern är en ut-parameter och returnerar värdet som användaren angav i inmatningsrutan.
    offentligstatisk DialogResult InputBox (strängtitel, strängpromptText, ref strängvärde)
    {
    }
  2. Inuti Inmatningslåda() funktionen, skapa UI-elementen som kommer att visas i formuläret.
    Form form = ny Form();
    Etikettetikett = ny Märka();
    TextBox textBox = ny Textruta();
    KnappknappOk = ny Knapp();
    KnappknappAvbryt = ny Knapp();
  3. Lägg till formulärets titel, som visas i det övre vänstra hörnet. Lägg också till huvudmeddelandet som visas för användaren ovanför inmatningsrutan.
    form. Text = titel;
    märka. Text = promptText;
  4. Lägg till värden för knapparna "Ok" och "Avbryt". Egenskapen text innehåller texten som visas ovanpå varje knapp. Egenskapen DialogResult innehåller den typ av resultat som knappen kommer att representera. Du kan läsa mer om DialogResult i Microsofts officiella dokumentation.
    knappOk. Text = "OK";
    knappen Avbryt. Text = "Avbryt";
    knappOk. DialogResult = DialogResult. OK;
    knappen Avbryt. DialogResult = DialogResult. Avbryt;
  5. Använd SetBounds() metod för att ställa in x- och y-positionerna för etiketten, textrutan och knapparna på formuläret. Du kan också ange varje elements bredd och höjd.
    märka.SetBounds(36, 36, 372, 13);
    textruta.SetBounds(36, 86, 700, 20);
    knappOk.SetBounds(228, 160, 160, 60);
    knappen Avbryt.SetBounds(400, 160, 160, 60);
  6. Konfigurera vissa egenskaper för själva dialogfönstret. Dessa egenskaper anger formulärets storlek, gränser och startposition. Den styr också möjligheten att minimera eller maximera fönstret, eller ändra storlek på etiketten vid behov.
    märka. AutoSize = Sann;
    form. Klientstorlek = ny Storlek(796, 307);
    form. FormBorderStyle = FormBorderStyle. FixedDialog;
    form. StartPosition = FormStartPosition. CenterScreen;
    form. MinimizeBox = falsk;
    form. MaximizeBox = falsk;
  7. Lägg till UI-elementen i det nya formuläret och ställ in formulärets acceptera- och avbrytknappar till knappobjekten som skapats tidigare.
    form. Kontroller. AddRange(ny Kontroll[] { label, textBox, buttonOk, buttonCancel });
    form. AcceptButton = buttonOk;
    form. CancelButton = buttonCancel;
  8. Visa det nyskapade dialogfönstret för användaren.
    DialogResult dialogResult = form. ShowDialog();
  9. Lagra värdet som användaren skrev in i textrutan. Returnera resultatet av formuläret, som antingen skulle vara "Ok" eller "Avbryt", baserat på knappen som användaren klickar på.
    värde = textruta. Text;
    lämna tillbaka dialogResult;

Hur man använder Inmatningsdialogrutan

För att använda inmatningsdialogrutan, ring till Inmatningslåda() funktion inuti dialogButton_Click() fungera. När användaren klickar på knappen "Öppna inmatningsdialogruta" visas dialogrutan.

  1. Inuti dialogButton_Click() funktionen, skapa en variabel för att lagra värdet som användaren anger i textrutan. Detta värde kommer från parametern "värde".
    strängvärde = "";
  2. Visa dialogrutan genom att anropa Inmatningslåda() fungera. Kontrollera om användaren klickar på "Ok"-knappen, och om så är fallet, lägg till lite text på skärmen för att visa svaret tillbaka till användaren.
    if (InputBox("Dialog ruta", "Vad heter du?", ref värde) == DialogResult. OK)
    {
    labelResponseInput. Synlig = Sann;
    labelResponseInput. Text = "Ditt namn: " + värde;
    }

Så här visar du popup-fönstret för inmatning

Kör programmet och aktivera dialogrutan.

  1. Klicka på den gröna uppspelningsknappen högst upp i Visual Studio-fönstret.
  2. Klicka på Öppna Inmatningsdialogrutan för att visa dialogrutan.
  3. Ange ett namn i textrutan och klicka på OK knapp. Dialogrutan stängs och visar resultaten som skrivits in i textrutan.
  4. Klicka på Öppna Inmatningsdialogrutan knappen igen för att öppna dialogrutan igen.
  5. Klicka på Avbryt för att stänga dialogrutan. Detta avbryter dialogrutan utan att slutföra några åtgärder eller uppdatera användargränssnittet.

Lägga till innehåll och UI-element till din Windows Forms-applikation

Du kan skapa inmatningsdialogrutor i ett Windows Forms-program och visa dem för användaren när vissa händelser inträffar. Du kan skapa ett nytt dialogfönster genom att skapa ett nytt formulär. Du kan sedan lägga till nya UI-element till den, som etiketter, textrutor eller knappar.

När användaren har angett den information som krävs kan du stänga inmatningsrutan och lagra informationen som de angett.

Om du vill lägga till mer innehåll i ditt gränssnitt eller dialogruta kan du utforska hur du lägger till andra gränssnittselement. Detta inkluderar element som former eller bilder.