Laden...

Buttons der MainForm aus anderen Benutzersteuerelementen de- und aktivieren

Erstellt von Bananajoe123 vor 3 Jahren Letzter Beitrag vor 3 Jahren 552 Views
B
Bananajoe123 Themenstarter:in
16 Beiträge seit 2020
vor 3 Jahren
Buttons der MainForm aus anderen Benutzersteuerelementen de- und aktivieren

Hallo wissende Forumsmitglieder,

ich habe folgende Aufgabenstellung:

Für eine GUI habe ich in meiner MainForm Buttons, die bei Click verschiedene Benutzersteuerelemente öffnen. Auf jedem dieser Benutzersteuerelemente befindet sich eine Art Notaus-Button.
Wenn dieser jeweils betätigt wird, sollen alle Buttons des gerade aktiven Benutzersteuerelements und die Buttons der MainForm deaktiviert werden, bis der Notausbutton ein zweites mal gedrückt wird. Dann müssen alle Buttons wieder aktiviert werden.

Meine Frage ist, wie man "sauber" Buttons in einer anderen Form deaktivieren kann.
Meine Recherche im Internet hat folgenden Code als Lösung ergeben. Das ist aber nicht besonders zuverlässig bei mehreren Benutzersteuerelementen. Für zwei scheint das zu funktionieren, bei mehreren geht das aber nicht mehr.

FormMain FormM = (FormMain)Application.OpenForms["FormMain"];
FormM.DisableButtons(false);

(DisableButtons als public definierte Methode in FormMain zum deaktivieren der Buttons angelegt)

Was wäre der Richtige Weg bzw. was muss ich in meiner MainForm und in den Benutzersteuerelementen als Code programmieren?

Herzliche Grüße und vielen Dank für die Hilfe

5.299 Beiträge seit 2008
vor 3 Jahren

ich hab grad was lustiges ausprobiert:
In den Settings eine bool-Property "ControlsEnabled" angelegt.
Einen Button aufs Form, und bei Databindings - ApplicationSettings ein Databinding eingerichtet zwischen dessen Property "Enabled" und my.settings.ControlsEnabled.
Weiters eine Checkbox aufs form, und deren Checked-Property auch an das Setting gebunden.
Jo, nun kannich mit der Checkbox den Button dis/en-ablen - und es ist ganz egal, auf welchem Form/UserControl der liegt.
Ist bei vielen Buttons vmtl. viel Geklickse, das einzurichten, aber ist ganz ohne Code zu schreiben.

Der frühe Apfel fängt den Wurm.

B
Bananajoe123 Themenstarter:in
16 Beiträge seit 2020
vor 3 Jahren

Vielen Dank für die Hilfe. Dein Artikel war sehr hilfreich! 👍
Gut ist auch, dass darin auch gängige Fehler aufgelistet sind. Einige davon habe ich bei meiner vorangegangenen Internetsuche selbst gefunden und probiert X(

Gut ist auch, dass es eine schöne Druckansicht gibt. =)

4.931 Beiträge seit 2008
vor 3 Jahren

Ebenfalls vielen Dank für das Feedback (bisher kannte ich das Feature "Druckansicht" noch gar nicht - ist automatischer Teil der Forensoftware).