Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
MDI-Parent mitteilen wenn Childs was tun
Atomroflman
myCSharp.de - Member



Dabei seit:
Beiträge: 266
Herkunft: Hamburg

Themenstarter:

MDI-Parent mitteilen wenn Childs was tun

beantworten | zitieren | melden

Hallo Leute,

Ich habe ein MDI, dem Parent möcht ich nun mitteilen wenn sich eines der ChildForms schliesst, ein neues hinzukommt oder eins aktiv wird...

Welches event kann ich dafür benutzen?
Von all den Sachen, die mir verloren gegangen, hab ich am meisten an meinem Verstand gehangen... MfG...
private Nachricht | Beiträge des Benutzers
herbivore
myCSharp.de - Experte

Avatar #avatar-2627.gif


Dabei seit:
Beiträge: 49.486
Herkunft: Berlin

beantworten | zitieren | melden

Hallo Atomroflman,

sowas solltest du selbst in der Doku nachschlagen.

Form.Closed
Form.Activated
Und das Erzeugen musst du selbst mitbekommen.

herbivore
private Nachricht | Beiträge des Benutzers
Atomroflman
myCSharp.de - Member



Dabei seit:
Beiträge: 266
Herkunft: Hamburg

Themenstarter:

beantworten | zitieren | melden

Das Problem dabei ist aber dass ich im MDI wissen möchte ob eines der darunter liegenden Fenster grade Aktiv ist... oder ob sich das Property
"ActiveMdiChild"
ändert...

Nur leider bekommen die Fenster ja nie den Fokus, jedenfalls springt das event nicht an wenn man in ein ChildFenster reinklickt...
Von all den Sachen, die mir verloren gegangen, hab ich am meisten an meinem Verstand gehangen... MfG...
private Nachricht | Beiträge des Benutzers
Wax
myCSharp.de - Member

Avatar #avatar-2276.jpg


Dabei seit:
Beiträge: 730
Herkunft: Dortmund

beantworten | zitieren | melden

Hi atomroflman,

von welchem Event ist denn die Rede?
Von "MdiChildActivate" ?

MfG
wax
private Nachricht | Beiträge des Benutzers
Atomroflman
myCSharp.de - Member



Dabei seit:
Beiträge: 266
Herkunft: Hamburg

Themenstarter:

beantworten | zitieren | melden

MDIChildActivate funktioniert auch nicht...
ich habe GotFokus genommen
Von all den Sachen, die mir verloren gegangen, hab ich am meisten an meinem Verstand gehangen... MfG...
private Nachricht | Beiträge des Benutzers
Atomroflman
myCSharp.de - Member



Dabei seit:
Beiträge: 266
Herkunft: Hamburg

Themenstarter:

beantworten | zitieren | melden

Also ich versuch noch mal mit einer ausführlichen Erklärung...

Ich habe ein MDI-Parent mit einer Toolbar und ich habe x MDI Childs...
Jetzt möchte ich feststellen wann sich das aktive MDI Child ändert und natürlich auch welches das neue ist...

Wenn ich jetzt sage:


        private void Main_MdiChildActivate(object sender, EventArgs e)
        {
            SetToolBarState(this.ActiveMdiChild);
        } 
Springt er irgendwie nie da rein...

Habe auch versucht jedem MDI-Child ein GotFocus zuzuordnen:


        private void btnStartModule_Click(object sender, EventArgs e)
        {
            int Modnr;
            if (int.TryParse(tbModStart.Text, out Modnr))
            {
                Form SubForm = FormLoader.OpenForm(Modnr);
                if (SubForm != null)
                {
                    SubForm.GotFocus += new EventHandler(SubForm_GotFocus);
                }
            }           
        }

        void SubForm_GotFocus(object sender, EventArgs e)
        {
            throw new NotImplementedException();
        }
Da springt er komischerweise erst rein wenn ich das Fenster schliesse...
Von all den Sachen, die mir verloren gegangen, hab ich am meisten an meinem Verstand gehangen... MfG...
private Nachricht | Beiträge des Benutzers
Wax
myCSharp.de - Member

Avatar #avatar-2276.jpg


Dabei seit:
Beiträge: 730
Herkunft: Dortmund

beantworten | zitieren | melden

Hi,

also bei mir reicht MdiChildActivate aus. Damit bekomme ich immer mit, wenn ein MdiChild angeklickt und somit aktiv wird.

Vielleicht hast Du die MdiParent-Eigenschaft des Child-Fensters nicht gesetzt?

MfG
wax
private Nachricht | Beiträge des Benutzers
Atomroflman
myCSharp.de - Member



Dabei seit:
Beiträge: 266
Herkunft: Hamburg

Themenstarter:

beantworten | zitieren | melden

Ich habe gerade heraus gefunden dass meine Childs NIEMALS den fokus bekommen... die Leiste oben am ChildFenster bleibt immer grau, daher wohl auch kein MdiChildActivate...

Nur leider kann ich mir nicht erklären warum das so ist...
Hat jemad ne Idee??
Von all den Sachen, die mir verloren gegangen, hab ich am meisten an meinem Verstand gehangen... MfG...
private Nachricht | Beiträge des Benutzers
Wax
myCSharp.de - Member

Avatar #avatar-2276.jpg


Dabei seit:
Beiträge: 730
Herkunft: Dortmund

beantworten | zitieren | melden

Ich glaube wenn Du mal etwas mehr Code zeigen würdest, könnte schnell geholfen werden. :D

MfG
wax
private Nachricht | Beiträge des Benutzers