Winforms : comment créer et afficher une boîte de dialogue de saisie

Winforms : comment créer et afficher une boîte de dialogue de saisie

Il est courant que les applications de bureau utilisent des boîtes de dialogue lorsqu'elles demandent des informations à l'utilisateur. Vous pouvez créer des boîtes de dialogue de saisie dans une application Windows Forms en affichant une nouvelle fenêtre.



Vous pouvez également ajouter des éléments d'interface utilisateur à la nouvelle fenêtre de dialogue. Il s'agit notamment des messages, des zones de texte et des boutons 'OK' et 'Annuler'. Lorsque l'utilisateur saisit des informations dans la zone de saisie, vous pouvez stocker le résultat et l'utiliser dans d'autres parties de l'application.





UTILISEZ LA VIDÉO DU JOUR

Comment créer une fonction On-Click pour déclencher la boîte de dialogue d'entrée

La boîte de dialogue ne doit pas toujours être visible. Vous pouvez déclencher la boîte de dialogue pour qu'elle s'affiche lorsque l'utilisateur effectue une action, telle qu'un clic sur un bouton. Vous pouvez également en savoir plus sur d'autres Événements Windows Forms que vous pouvez utiliser dans une application Windows Forms.





Ajoutez un bouton au canevas et créez une fonction qui s'exécutera lorsque l'utilisateur cliquera sur le bouton.

  1. Créer un nouvelle application Windows Forms dans Visual Studio.
  2. Dans la boîte à outils, recherchez un contrôle d'interface utilisateur de bouton.
  3. Cliquez et faites glisser un bouton sur le canevas.   Modification des propriétés du bouton sur le canevas Winforms
  4. Dans la fenêtre des propriétés, modifiez les propriétés du bouton avec les nouvelles valeurs suivantes :
    Nom bouton de dialogue
    Taille 400, 100
    Texte Ouvrir la boîte de dialogue de saisie
      Étiquette ajoutée au canevas de l'application Winforms
  5. Dans la boîte à outils, cliquez et faites glisser une étiquette sur le canevas. Placez l'étiquette sur le côté droit du bouton.
  6. Dans la fenêtre des propriétés, modifiez les propriétés de l'étiquette avec les valeurs suivantes :
    Nom labelResponseInput
    Visible Faux
  7. Double-cliquez sur le nouveau bouton Input Dialog. Cela générera une fonction au clic dans le fichier CS code-behind pour le formulaire.
    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
    }

Comment créer la boîte de dialogue d'entrée

Créez la boîte de dialogue dans une nouvelle fonction. La fonction créera par programme un nouveau formulaire et y ajoutera des éléments d'interface utilisateur, y compris une zone de texte avec les boutons 'Ok' et 'Annuler'.



  1. Sous le dialogButton_Click() fonction, créez une nouvelle fonction qui créera la boîte de dialogue d'entrée. Le paramètre 'titre' s'affichera dans le coin supérieur gauche de la fenêtre. La valeur de 'promptText' s'affichera pour l'utilisateur. Le paramètre 'valeur' est un paramètre de sortie et renverra la valeur que l'utilisateur a entrée dans la zone de saisie.
    public static DialogResult InputBox(string title, string promptText, ref string value) 
    {
    }
  2. À l'intérieur de Zone de saisie() fonction, créez les éléments d'interface utilisateur qui s'afficheront sur le formulaire.
    Form form = new Form(); 
    Label label = new Label();
    TextBox textBox = new TextBox();
    Button buttonOk = new Button();
    Button buttonCancel = new Button();
  3. Ajoutez le titre du formulaire, qui s'affichera dans le coin supérieur gauche. Ajoutez également le message principal qui s'affichera pour l'utilisateur, au-dessus de la zone de saisie.
    form.Text = title; 
    label.Text = promptText;
  4. Ajoutez des valeurs pour les boutons 'Ok' et 'Annuler'. La propriété text contient le texte qui s'affiche en haut de chaque bouton. La propriété DialogResult contient le type de résultat que le bouton représentera. Vous pouvez en savoir plus sur DialogResult dans Documentation officielle de Microsoft
    buttonOk.Text = "OK"; 
    buttonCancel.Text = "Cancel";
    buttonOk.DialogResult = DialogResult.OK;
    buttonCancel.DialogResult = DialogResult.Cancel;
    .
  5. Utilisez le SetBounds() pour définir les positions x et y de l'étiquette, de la zone de texte et des boutons sur le formulaire. Vous pouvez également spécifier la largeur et la hauteur de chaque élément.
    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. Configurez certaines propriétés pour la fenêtre de dialogue elle-même. Ces propriétés définissent la taille du formulaire, les bordures et la position de départ. Il contrôle également la possibilité de minimiser ou de maximiser la fenêtre, ou de redimensionner l'étiquette si nécessaire.
    label.AutoSize = true; 
    form.ClientSize = new Size(796, 307);
    form.FormBorderStyle = FormBorderStyle.FixedDialog;
    form.StartPosition = FormStartPosition.CenterScreen;
    form.MinimizeBox = false;
    form.MaximizeBox = false;
  7. Ajoutez les éléments de l'interface utilisateur au nouveau formulaire et définissez les boutons d'acceptation et d'annulation du formulaire sur les objets de bouton créés précédemment.
    form.Controls.AddRange(new Control[] { label, textBox, buttonOk, buttonCancel }); 
    form.AcceptButton = buttonOk;
    form.CancelButton = buttonCancel;
  8. Afficher la fenêtre de dialogue nouvellement créée à l'utilisateur.
    DialogResult dialogResult = form.ShowDialog();
  9. Stockez la valeur que l'utilisateur a saisie dans la zone de texte. Renvoie le résultat du formulaire, qui serait soit 'Ok', soit 'Annuler', en fonction du bouton sur lequel l'utilisateur clique.
    value = textBox.Text; 
    return dialogResult;

Comment utiliser la boîte de dialogue d'entrée

Pour utiliser la boîte de dialogue de saisie, appelez le Zone de saisie() fonction à l'intérieur du dialogButton_Click() fonction. Lorsque l'utilisateur clique sur le bouton 'Ouvrir la boîte de dialogue d'entrée', la boîte de dialogue s'affiche.

  1. À l'intérieur de dialogButton_Click() fonction, créez une variable pour stocker la valeur que l'utilisateur entre dans la zone de texte. Cette valeur proviendra du paramètre 'value' out.
    string value = "";
  2. Affichez la boîte de dialogue en appelant le Zone de saisie() fonction. Vérifiez si l'utilisateur clique sur le bouton 'Ok', et si c'est le cas, ajoutez du texte à l'écran pour afficher la réponse à l'utilisateur.
    if (InputBox("Dialog Box", "What is your name?", ref value) == DialogResult.OK) 
    {
    labelResponseInput.Visible = true;
    labelResponseInput.Text = "Your name: " + value;
    }

Comment afficher la fenêtre contextuelle de la boîte de dialogue d'entrée

Exécutez l'application et déclenchez la boîte de dialogue.





  1. Cliquez sur le bouton de lecture vert en haut de la fenêtre de Visual Studio.
  2. Clique sur le Ouvrir la boîte de dialogue de saisie bouton pour afficher la boîte de dialogue.
  3. Entrez un nom dans la zone de texte et cliquez sur le D'ACCORD bouton. La boîte de dialogue se ferme et affiche les résultats saisis dans la zone de texte.
  4. Clique sur le Ouvrir la boîte de dialogue de saisie à nouveau pour rouvrir la boîte de dialogue.
  5. Clique sur le Annuler bouton pour fermer la boîte de dialogue. Cela annule la boîte de dialogue sans effectuer aucune action ni mettre à jour l'interface utilisateur.

Ajout de contenu et d'éléments d'interface utilisateur à votre application Windows Forms

Vous pouvez créer des boîtes de dialogue de saisie dans une application Windows Forms et les afficher à l'utilisateur lorsque certains événements se produisent. Vous pouvez créer une nouvelle fenêtre de dialogue en créant un nouveau formulaire. Vous pouvez ensuite y ajouter de nouveaux éléments d'interface utilisateur, tels que des étiquettes, des zones de texte ou des boutons.

Une fois que l'utilisateur a saisi les informations requises, vous pouvez fermer la zone de saisie et stocker les informations qu'il a saisies.





Si vous souhaitez ajouter plus de contenu à votre interface utilisateur ou à votre boîte de dialogue, vous pouvez découvrir comment ajouter d'autres éléments d'interface utilisateur. Cela inclut des éléments tels que des formes ou des images.

Comment puis-je faire en sorte que Chrome utilise moins de mémoire ?