MDi probleme avec bool et erreur [Résolu]

Signaler
Messages postés
9
Date d'inscription
vendredi 19 janvier 2007
Statut
Membre
Dernière intervention
13 août 2011
-
Messages postés
9
Date d'inscription
vendredi 19 janvier 2007
Statut
Membre
Dernière intervention
13 août 2011
-
Bonjour,

Ca fait des heure et des heure que je chercheune solution qui marche pour mettre un bool true sur le form parent.

Mon projet ce compose de 1 parent et 2 child integret en MDI.

Sur mon parent j'ai besoin de mettre un bool true à partir d'un de mes child.

J'ai vue beaucoup de methode dont une qui revient souvent
internal Boolean _Imaget =  false;
        public Boolean Imaget
        {
            get { return _Imaget; }
            set { _Imaget = value; }

        }

que j'ai placer dans parent

sur le child je c'est pas trop quoi mettre, jai essayer plusieur truc:
((PrincipaleForm)Application.OpenForms["PrincipaleForm"]).df  = true;

Ca passe du string mais pas du bool donc j'ai mis ca:
PrincipaleForm.Imaget = true;


et la j'ai l'erreur suivante:
Une référence d'objet est requise pour la propriété, la méthode ou le champ non statique ' Monprojet.PrincipaleForm.Imaget.get'

5 réponses

Messages postés
14786
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
29 septembre 2020
438
Quand tu crées ta form Child, lui définis tu la valeur de MdiParent?

par exemple si ta Child s'appelle MaMDI
MaMDI MaForme = new MaMDI();
Maforme.MdiParent = this;//ici

MaForme.show();




Whismeril
Messages postés
9
Date d'inscription
vendredi 19 janvier 2007
Statut
Membre
Dernière intervention
13 août 2011

Merci ca marche parfaitement !!! :)

Je met le code pour ceux qui cherche comme moi:
internal Boolean _Imaget = false;
        public Boolean Imaget
        {
            get { return _Imaget; }
            set { _Imaget = value;
            if (_Imaget == true)
            {
                radPageView1.SelectedPage = radPageViewScreen;
            }
            }
        }
Messages postés
14786
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
29 septembre 2020
438
Bonjour,

Il te faut une variable qui corresponde à l'instance de ta forme mère.

Essaye ça:
((PrincipaleForm)this.MdiParent).Imaget= true;




Whismeril
Messages postés
9
Date d'inscription
vendredi 19 janvier 2007
Statut
Membre
Dernière intervention
13 août 2011

Merci, mais ca marche toujour pas.

j'ai mis ca sur le form parent:
internal Boolean _Imaget = false;
        public Boolean Imaget
        {
            get { return _Imaget; }
            set { _Imaget = value; }

        }


et ca sur le form child (actionner par un clic du buton)
((PrincipaleForm)this.MdiParent).Imaget= true;


et il me met:
La référence d'objet n'est pas définie à une instance d'un objet.
Messages postés
9
Date d'inscription
vendredi 19 janvier 2007
Statut
Membre
Dernière intervention
13 août 2011

Merci plus aucune erreur.

Mais ca me change pas la valeur.
  FormWelcome ChildWelcome = new FormWelcome();
        FormMesCodebarre ChildMesCodeBarre = new FormMesCodebarre();

        internal Boolean _Imaget = false;
        public Boolean Imaget
        {
            get { return _Imaget; }
            set { _Imaget = value; }

        }
        public PrincipaleForm()
        {
            InitializeComponent();
            this.IsMdiContainer = true;
            this.AllowAero = false;

            ChildWelcome.MdiParent = this;

            ChildWelcome.panelWelcome.Parent = this.radPageViewWelcome;


            panel2Titre.Text = Imaget.ToString();
           

           if (Imaget == true)
            {
                radPageView1.SelectedPage =  radPageViewScreen;
            }
 
        }


enfaite c'est pour changer le if Imaget. Je le met petetre pas au bon endroit.