Eigenschaften in einer anderen Form ändern
-
Hallo,
habe folgendes vor und komme nicht so recht weiter.
Ich möchte zum Beispiel die DataGridView->Backcolor-Eigenschaft in einem Fenster (Einstellungen) ändern.
Die Änderungen werden auch in meinem Muster DatGridView angezeigt, nur wenn ich Versuche auf das eigentliche Haupt-DataGridView zuzugreifen bekomme ich so meine Zweifel.
Der Code in der Funktion wird abgearbeitet, aber die Einstellungen werden nicht angenommen.
Die MessageBox die ich zu Testzwecken in den Code eingebaut habe wird angezeigt, aber die Farbeinstellungen werden einfach ignoriert.
Wenn ich die Funktion vom Fenster aufrufe in dem sich das DataGridView befindet, wird die Einstellung ohne Probleme übernommen.
Habe das mal mit einem Button ausprobiert.
Der eine Button Sitz in der Form1, durch klick wird die Form2 (Einstellung) aufgerufen.
Nun klicke ich auf den zweiten Button in Form1, der den Text von dem Button in der Form2 (Einstellungen) einfach nur ändern soll, zum Beispiel in „Hello World“ oder so.
Geht aber nicht, bekomme auch keine Fehlermeldung, nix.
Ratlosigkeit macht sich beit.
Habt ihr vielleicht eine Lösung und Erklärung für dieses Problem.
Vielen Dank schon mal im Voraus.Button1 in Form1
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) { fensterEinstellung = gcnew Einstellung;//Form2 fensterEinstellung->Show();//Form2 aufrufen }
Button2 in Form1
private: System::Void button2_Click(System::Object^ sender, System::EventArgs^ e) { Einstellung^ fensterEinstellung = gcnew Einstellung;//Form2 //Veruschen den Text der Schaltfläche zuändern, aber nix passiert fensterEinstellung->button1->Text = "Hello World"; }
-
DataGridView->Refresh(); DataGridView->Repaint(); DataGridView->Update();
Evtl.?
-
Na, das Problem sitzt hier vor der Tastatur =o)
Einstellung^ fensterEinstellung = gcnew Einstellung;//Form2 //Veruschen den Text der Schaltfläche zuändern, aber nix passiert fensterEinstellung->button1->Text = "Hello World"; fensterEinstellung = gcnew Einstellung;//Form2 fensterEinstellung->Show();//Form2 aufrufen
Du erzeugst das Fenster vor dem Show neu, da bleiben keine Änderungen übrig