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 :

Form: showdialog, show and focus


Sujet :

Windows Forms

  1. #1
    Membre régulier
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Août 2007
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Août 2007
    Messages : 128
    Points : 90
    Points
    90
    Par défaut Form: showdialog, show and focus
    Bonjour,

    J'ai deux fenetre que j ai programme, avec Showdialog je ne peux pas avoir le focus sur la deuxieme fenetre. avec show oui. Mon probleme est le suivant. Quand j'utilise showdialog, je traite les donnees de la seconde fenetre directement dans la premiere:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if (Part_Properties.ShowDialog(this) == DialogResult.OK) 
    { Part_Properties.Save_Modifier_Part(ClickedPart); 
    Numeric_Txt = Part_Properties.Numeric_Text();
    Combo_Txt = Part_Properties.Combobox_Text();
    }
    Ce qui fonctionne sans le focus. Mais je voudrais avoir le focus dans le champ de donnee de la seconde. Pour ca il faut show et ensuite le focus
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Part_Properties.Show();
    Part_Properties.set_focus();
    mais les donnees sont traiter dans la seconde fenetre. Et j'arrive pas a transfere ces donnees a la fenetre Parents (c-a-d la premiere.) Quelqu'un a une idee et peut m'aider.
    Merci d'avance

  2. #2
    Rédacteur
    Avatar de Louis-Guillaume Morand
    Homme Profil pro
    Cloud Architect
    Inscrit en
    Mars 2003
    Messages
    10 839
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

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

    Informations forums :
    Inscription : Mars 2003
    Messages : 10 839
    Points : 28 253
    Points
    28 253
    Par défaut
    déjà, tu fais pas pareil entre

    Part_Properties.ShowDialog(this)
    et
    Part_Properties.Show();


    pourquoi ne passes-tu pas 'this' via la méthode Show?

  3. #3
    Membre régulier
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Août 2007
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Août 2007
    Messages : 128
    Points : 90
    Points
    90
    Par défaut
    Citation Envoyé par Louis-Guillaume Morand Voir le message
    déjà, tu fais pas pareil entre

    Part_Properties.ShowDialog(this)
    et
    Part_Properties.Show();


    pourquoi ne passes-tu pas 'this' via la méthode Show?
    Je l'ai fais passe mais j'ai toujours le meme probleme qu'il n y a pas de communication entre la seconde fenetre et la premier.

    Merci

  4. #4
    Rédacteur
    Avatar de Louis-Guillaume Morand
    Homme Profil pro
    Cloud Architect
    Inscrit en
    Mars 2003
    Messages
    10 839
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

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

    Informations forums :
    Inscription : Mars 2003
    Messages : 10 839
    Points : 28 253
    Points
    28 253
    Par défaut
    mais si. la communication se fait tjs mais ca ne se fait pas par "magie" donc faut le coder soit-même.


    1- as-tu essayé en debug avec des breakpoint de voir où ca passait?

    2- c'est quoi ces "Part_Properties.Numeric_Text();". pourquoi utilises-tu des méthodes plutot que des propriétés? Y a-t-il une raison valable d'avoir une méthode si ca ne récupère que le texte d'une textbox?

    3- enfin j'avais pas regardé mais t'as pas forcément besoin de passer "this" si tu n'utilise pas l'objet dans la seconde fenêtre.


    4- pour le focus. tu as une raison de ne pas le faire en automatique dans le "Load" de la seconde fenetre?

    5- tu parles de focus et ensuite de données traitées que tu n'arrives pas à rendre. quel est le probleme? c'est vide? une exception?
    si tu n'es pas plus clair, on va perdre bcp de temps à t'aider

  5. #5
    Membre régulier
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Août 2007
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Août 2007
    Messages : 128
    Points : 90
    Points
    90
    Par défaut
    >>2- c'est quoi ces "Part_Properties.Numeric_Text();". pourquoi utilises-tu des méthodes plutot que des propriétés? Y a-t-il une raison valable d'avoir une méthode si ca ne récupère que le texte d'une textbox?
    Il s'agit de deux Windows-Form differentes: Policy_Properties et le Part_Properties. le premier cree une instance du second Part_Poperties New_Part = new Part_Properties(). Ne sachant pas comment apres avoir remplis les textbox dans le second Windows, obtenir les valeurs, donc une methode dans Part_Properties qui me renvoie les valeurs (La question serait comment faire communiquer les deux Windows-Forms, ou encore comment fait on communiquer un Windows-Forms avec d'autres?)

    >>3- enfin j'avais pas regardé mais t'as pas forcément besoin de passer "this" si tu n'utilise pas l'objet dans la seconde fenêtre.
    La tu as parfaitement raison, et je l'ai entretemps retirer, il n'est pas necessaire.

    >>4- pour le focus. tu as une raison de ne pas le faire en automatique dans le "Load" de la seconde fenetre?
    Le Focus c'est la le debut de mon probleme: Quand j'utilise showdialog le Part_Properties perd le focus. Par contre avec Show il est la (mais manque de communication entre les deux Forms, qui m'empeche d'utiliser Show(). En utilisant (Part_Properties.Showdialog() == DialogResult.OK) j'ai directement dans Policy_Properties les donnees de Part_Properties. et cela fonctionne sans justement le Focus que je souhaite avoir.

    >>5- tu parles de focus et ensuite de données traitées que tu n'arrives pas à rendre. quel est le probleme? c'est vide? une exception?
    si tu n'es pas plus clair, on va perdre bcp de temps à t'aider [/QUOTE]

    : ouais tu as raison, je ne sais pas si c est plus clair maintenant. Mais je ne m'empecher de dire tout de meme grand merci pour cette disponibilite.

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

Discussions similaires

  1. [C# 2.0] Savoir si une Windows.Form obtient / perd le focus
    Par nicolas.pied dans le forum Windows Forms
    Réponses: 2
    Dernier message: 18/05/2007, 22h09
  2. form fenetre modale : set focus sur Etat ??:!
    Par djefff75 dans le forum IHM
    Réponses: 15
    Dernier message: 10/02/2006, 03h28
  3. [C#] Form ShowDialog pas comprendre :p
    Par betaphp dans le forum Windows Forms
    Réponses: 2
    Dernier message: 19/12/2005, 14h37
  4. Réponses: 2
    Dernier message: 05/11/2005, 18h32

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