Winforms: com crear i mostrar un quadre de diàleg d'entrada

Winforms: com crear i mostrar un quadre de diàleg d'entrada

És habitual que les aplicacions d'escriptori utilitzin quadres de diàleg quan demanen informació a l'usuari. Podeu crear quadres de diàleg d'entrada en una aplicació de Windows Forms, mostrant una finestra nova.





També podeu afegir elements d'IU a la nova finestra de diàleg. Aquests inclouen missatges, quadres de text i botons 'D'acord' i 'Cancel·la'. Quan l'usuari introdueix informació al quadre d'entrada, podeu emmagatzemar el resultat i utilitzar-lo en altres parts de l'aplicació.





MAKEUSEO VÍDEO DEL DIA

Com crear una funció de clic per activar el quadre de diàleg d'entrada

El quadre de diàleg no ha de ser sempre visible. Podeu activar el quadre de diàleg per mostrar quan l'usuari completa una acció, com ara un clic a un botó. També podeu aprendre més sobre altres Esdeveniments de Windows Forms que podeu utilitzar en una aplicació de Windows Forms.





com transferir les fotos de l'iPhone a l'ordinador

Afegiu un botó al llenç i creeu una funció que s'executarà quan l'usuari faci clic al botó.

  1. Crea un nova aplicació de Windows Forms a Visual Studio.
  2. A la Caixa d'eines, cerqueu un botó de control de la IU.
  3. Feu clic i arrossegueu un botó al llenç.   S'han canviat les propietats del botó al llenç de Winforms
  4. A la finestra de propietats, canvieu les propietats del botó als valors nous següents:
    Nom botó de diàleg
    Mida 400, 100
    Text Obriu el diàleg d'entrada
      S'ha afegit una etiqueta al llenç de l'aplicació Winforms
  5. A la Caixa d'eines, feu clic i arrossegueu una etiqueta al llenç. Col·loqueu l'etiqueta al costat dret del botó.
  6. A la finestra de propietats, canvieu les propietats de l'etiqueta als valors següents:
    Nom labelResponseInput
    Visible Fals
  7. Feu doble clic al botó de diàleg d'entrada nou. Això generarà una funció de clic al fitxer CS de codi per al formulari.
    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
    }

Com crear el quadre de diàleg d'entrada

Creeu el quadre de diàleg dins d'una funció nova. La funció crearà programadament un formulari nou i hi afegirà elements de la interfície d'usuari, inclòs un quadre de text amb els botons 'D'acord' i 'Cancel·la'.



  1. Sota la dialogButton_Click() funció, creeu una funció nova que crearà el quadre de diàleg d'entrada. El paràmetre 'títol' es mostrarà a l'extrem superior esquerre de la finestra. El valor del 'promptText' es mostrarà a l'usuari. El paràmetre 'valor' és un paràmetre de sortida i retornarà el valor que l'usuari ha introduït dins del quadre d'entrada.
    public static DialogResult InputBox(string title, string promptText, ref string value) 
    {
    }
  2. Dins del InputBox() funció, creeu els elements de la IU que es mostraran al formulari.
    Form form = new Form(); 
    Label label = new Label();
    TextBox textBox = new TextBox();
    Button buttonOk = new Button();
    Button buttonCancel = new Button();
  3. Afegiu el títol del formulari, que es mostrarà a l'extrem superior esquerre. Afegiu també el missatge principal que es mostrarà a l'usuari, a sobre del quadre d'entrada.
    form.Text = title; 
    label.Text = promptText;
  4. Afegiu valors per als botons 'D'acord' i 'Cancel·la'. La propietat text conté el text que es mostra a la part superior de cada botó. La propietat DialogResult conté el tipus de resultat que representarà el botó. Podeu llegir més sobre DialogResult a Documentació oficial de Microsoft
    buttonOk.Text = "OK"; 
    buttonCancel.Text = "Cancel";
    buttonOk.DialogResult = DialogResult.OK;
    buttonCancel.DialogResult = DialogResult.Cancel;
    .
  5. Utilitzar el SetBounds() mètode per establir les posicions x i y de l'etiqueta, el quadre de text i els botons del formulari. També podeu especificar l'amplada i l'alçada de cada element.
    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. Configureu algunes propietats per a la mateixa finestra de diàleg. Aquestes propietats estableixen la mida del formulari, les vores i la posició inicial. També controla la capacitat de minimitzar o maximitzar la finestra, o canviar la mida de l'etiqueta si cal.
    label.AutoSize = true; 
    form.ClientSize = new Size(796, 307);
    form.FormBorderStyle = FormBorderStyle.FixedDialog;
    form.StartPosition = FormStartPosition.CenterScreen;
    form.MinimizeBox = false;
    form.MaximizeBox = false;
  7. Afegiu els elements de la interfície d'usuari al formulari nou i configureu els botons d'acceptació i cancel·lació del formulari als objectes de botó creats anteriorment.
    form.Controls.AddRange(new Control[] { label, textBox, buttonOk, buttonCancel }); 
    form.AcceptButton = buttonOk;
    form.CancelButton = buttonCancel;
  8. Mostra a l'usuari la finestra de diàleg creada recentment.
    DialogResult dialogResult = form.ShowDialog();
  9. Emmagatzema el valor que l'usuari ha introduït al quadre de text. Retorna el resultat del formulari, que seria 'D'acord' o 'Cancel·la', segons el botó en què faci clic l'usuari.
    value = textBox.Text; 
    return dialogResult;

Com utilitzar el quadre de diàleg d'entrada

Per utilitzar el quadre de diàleg d'entrada, truqueu al InputBox() funció dins del dialogButton_Click() funció. Quan l'usuari faci clic al botó 'Obre el diàleg d'entrada', mostrarà el quadre de diàleg.

què vol dir sim no aprovisionat
  1. Dins del dialogButton_Click() funció, creeu una variable per emmagatzemar el valor que l'usuari introdueix dins del quadre de text. Aquest valor prové del paràmetre de sortida 'valor'.
    string value = "";
  2. Mostra el quadre de diàleg trucant a InputBox() funció. Comproveu si l'usuari fa clic al botó 'D'acord' i, si és així, afegiu text a la pantalla per mostrar la resposta a l'usuari.
    if (InputBox("Dialog Box", "What is your name?", ref value) == DialogResult.OK) 
    {
    labelResponseInput.Visible = true;
    labelResponseInput.Text = "Your name: " + value;
    }

Com veure el diàleg emergent d'entrada

Executeu l'aplicació i activeu el quadre de diàleg.





  1. Feu clic al botó verd de reproducció a la part superior de la finestra de Visual Studio.
  2. Feu clic a Obriu el diàleg d'entrada botó per mostrar el quadre de diàleg.
  3. Introduïu un nom al quadre de text i feu clic a D'acord botó. El quadre de diàleg es tancarà i mostrarà els resultats introduïts al quadre de text.
  4. Feu clic a Obriu el diàleg d'entrada botó de nou per tornar a obrir el quadre de diàleg.
  5. Feu clic a Cancel · lar botó per tancar el quadre de diàleg. Això cancel·la el quadre de diàleg sense completar cap acció ni actualitzar la IU.

Afegir contingut i elements d'IU a la vostra aplicació de Windows Forms

Podeu crear quadres de diàleg d'entrada en una aplicació de Windows Forms i mostrar-los a l'usuari quan succeeixin determinats esdeveniments. Podeu crear una finestra de diàleg nova creant un formulari nou. A continuació, podeu afegir-hi elements nous de la interfície d'usuari, com ara etiquetes, quadres de text o botons.

aplicació de missatgeria tot en una sola Android

Un cop l'usuari ha introduït la informació requerida, podeu tancar el quadre d'entrada i emmagatzemar la informació que ha introduït.





Si voleu afegir més contingut a la vostra IU o al quadre de diàleg, podeu explorar com afegir altres elements de la IU. Això inclou elements com ara formes o imatges.