IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Forms Discussion :

Modifier des TextBox créées dans une fonction mais dans une autre fonction


Sujet :

Windows Forms

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2019
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2019
    Messages : 8
    Par défaut Modifier des TextBox créées dans une fonction mais dans une autre fonction
    Alors oui je sais le titre est pas clair j'avoue que même moi j'ai du mal à m'en sortir là. je suis actuellement en stage et dans un des formulaires la personne avant génère des Textbox qu'elle met ensuite dans une groupBox. Le fait est que je dois modifier l'écriture (mettre en gras ou non selon les cas) de ces TextBox... Hors au moment où j'écris le code ces textBox n'existent pas et je ne sais pas comment faire du coup... J'ai essayé .Contains() ainsi que .GetNextControl() sur la GroupBox mais sans succès et je me retrouve dans une impasse...
    Quelqu'un aurait-il une solution ?
    Exemple d'une textbox générée :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    for (int i = 2; i <= TypeModels.nbContMax; i++)
                {
                    // edrBlock
                    // 
                    tb = new System.Windows.Forms.TextBox();
                    tb.Location = new System.Drawing.Point(xEd1Cont1 + dxCont * (i - 1), yEd1Cont1);
                    tb.Size = new System.Drawing.Size(widthEdit, heightEdit);
                    p = ps.GetParameter(eParameter.rBlock);
                    tb.Name = "edrBlock" + i.ToString();
                    tb.Text = Convert.ToString(p.defaultVal);
                    toolTipParam1.SetToolTip(tb, ps.GetParameter(((int)eParameter.rBlock) + (i - 2) * CParameters.nbParameterContBlock).Help); // ps.GetParameter(eParameter.rBlock + (i-2)*CParameters.nbParameterContBlock).Help)
                    tb.Leave += new System.EventHandler(this.EditLeave);
                    //tb.Leave += new System.EventHandler(this.EditrBlockLeave);
                    this.gbAquiferVal.Controls.Add(tb);
                    this.arlContinua2Plus.Add(tb);
                    this.arlEditLeave.Add(tb);
                  }
    Merci d'avance

  2. #2
    Expert confirmé
    Avatar de popo
    Homme Profil pro
    Analyste programmeur Delphi / C#
    Inscrit en
    Mars 2005
    Messages
    2 994
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste programmeur Delphi / C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 2 994
    Par défaut
    Si tu sais quel est le critère qui détermine le fait que ça soit en gras ou non, qu'est ce qui t'empêche d'insérer une condition dans ce code ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (condition){tb.Font = new Font(tb.Font, FontStyle.Bold);}

  3. #3
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2019
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2019
    Messages : 8
    Par défaut
    Le fait est que c'est une très grosse fonction et il va y avoir beaucoup de conditions... Ces textbox sont générés dans une fonction appelées lors du "Load" du Form et génère pas mal de TextBox... Le fait est que les régènérer à chaque fois pourrait être lourd surtout que le programme sera destiné à des utilisateurs ayant des ordinateurs pas forcément très puissant... En soit, je pense que je pourrais faire comme tu m'as dis mais j'ai peur que ça fasse très brouillon étant donné qu'il y a beaucoup de conditions, j'aurais aimé mettre la mise en gras dans une fonction à part que j'appelle lorsque mon texte dans la combobox change (c'est l'élément trigger).

  4. #4
    Membre Expert
    Homme Profil pro
    Développeur .Net / Delphi
    Inscrit en
    Juillet 2002
    Messages
    738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Développeur .Net / Delphi
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2002
    Messages : 738
    Par défaut
    Bonjour,

    Lorsque le texte du TextBox change, si tu as la possibilité de connaitre les critères de mise en gras ici, tu peux faire ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    private void txtBox_TextChanged(object sender, EventArgs e)
    {
          if (condition){(sender as TextBox).Font = ... ;}
    }
    sender représente la TextBox en question.


    J'ai vu que tu utilisais l'event Leave, le principe reste le même.

  5. #5
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2019
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2019
    Messages : 8
    Par défaut
    Merci pour vos réponses tout d'abord. au final j'ai trouvé une méthode qui était utilisé dans l'ancienne version du programme et je n'ai plus qu'à réajuster les conditions... Je ne vais pas aller chercher plus dans le détail tant que ça marche... Aussi, la condition vient d'une combobox selon quel élément est sélectionné et le gras se réactualise à chaque fois que le texte dans cette combobox est changé aussi .

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 29/10/2018, 11h45
  2. [Python 2.X] Récupérer un fichier dans une fonction créée par une autre fonction
    Par nekcorp dans le forum Général Python
    Réponses: 2
    Dernier message: 04/04/2016, 11h31
  3. Réponses: 3
    Dernier message: 19/05/2014, 08h24
  4. Réponses: 1
    Dernier message: 30/03/2012, 12h56
  5. Réponses: 9
    Dernier message: 17/10/2005, 10h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo