Powershell - Nur TRUE für eine Checkbox erlauben

newbi2009
Goto Top
Hallo zusammen,

ich habe in Powershell 10 Checkboxen. Ich möchte nur erlauben, dass eine von diesen 10 CheckBoxen markiert werden kann.

Nun könnte ich, wenn ich nur 2 Checkboxen hätte, recht einfach mit folgendem Code verhindern, dass die 2. CheckBox gleichzeitig $True ist



Wie mache ich es denn am geschicktesten mit meinen 10 Checkboxen? Es gibt doch sicherlich einen eleganteren Weg, als 10 If-Abfragen zu erstellen, und in jeder Abfrage die anderen 9 Checkboxen auf Enabled = $False zu setzen. Aber irgendwie wüsste ich gerade nicht WIE.
Habt Ihr eine Anregung für mich?

Danke Euch
Holger

Content-Key: 3134362354

Url: https://administrator.de/contentid/3134362354

Ausgedruckt am: 02.07.2022 um 12:07 Uhr

Mitglied: emeriks
emeriks 21.06.2022 um 14:51:04 Uhr
Goto Top
Hi,
wäre möglicherweise nicht RadioButton die bessere Wahl, statt CheckBox?

E.
Mitglied: colinardo
colinardo 21.06.2022 aktualisiert um 16:19:45 Uhr
Goto Top
Servus Holger.
Zitat von @emeriks:
wäre möglicherweise nicht RadioButton die bessere Wahl, statt CheckBox?
Wäre auch meine Wahl ...

2 Beispiel für dich:

back-to-topRadio Buttons


Mit Checkboxen geht's aber auch wenn's sein muss

back-to-topCheckboxes

Grüße Uwe
Mitglied: newbi2009
newbi2009 21.06.2022 um 21:09:44 Uhr
Goto Top
Hi vielen Dank für den Tipp - ich schaue mir das morgen mal etwas genauer an.....
Mitglied: newbi2009
newbi2009 22.06.2022 um 07:30:51 Uhr
Goto Top
Hallo nochmal, ich habe mir die beiden Codes einmal angeschaut- sehr cool, sind wesentlich kürzer, als meiner. Ich glaube, ich habe echt noch viiiieeel zu lernen!!!
Aber um ehrlich zu sein verstehe ich nicht, was folgender Code macht


Ich scheitere schon alleine daran, jeder Box einen anderen Namen zu geben (nicht 1-10, sondern aaa, abc, fgb, igh,....) face-sad
Könntest Du mir da wohl nochmal auf die Sprünge helfen?

vielen Dank!
Mitglied: TK1987
Lösung TK1987 22.06.2022 aktualisiert um 07:56:28 Uhr
Goto Top
Moin,

Zitat von @newbi2009:
Ich scheitere schon alleine daran, jeder Box einen anderen Namen zu geben (nicht 1-10, sondern aaa, abc, fgb, igh,....) face-sad
1..10 erstellt ein Array aus den Zahlen von 1 bis 10, das %-Zeichen ist ein Alias für Foreach-Object - erstellt dann also für jede dieser Zahlen eine Checkbox gemäß dem Code in den geschweiften Klammern.
Könntest Du mir da wohl nochmal auf die Sprünge helfen?
Einfach den Array aus den Zahlen 1..10 durch einen Array deiner Wahl austauschen:

Die Pipeline-Variable, die den Text enthält ist immer $_

Gruß Thomas
Mitglied: newbi2009
newbi2009 22.06.2022 um 08:28:55 Uhr
Goto Top
Hallo Thomas,

danke! Das hilft meinem Verständnis etwas auf die Sprünge! face-smile
Mitglied: TK1987
TK1987 22.06.2022 um 08:47:11 Uhr
Goto Top
Zitat von @newbi2009:
danke! Das hilft meinem Verständnis etwas auf die Sprünge! face-smile
Gerne.

Noch zur Info: Die Location-Zeile musst du natürlich ebenfalls anpassen, da @colinardo hier mit dem Wert aus den Array von 1-10 gerechnet hat. Am besten ersetzt du den Wert hier durch eine andere Variable und erhöhst diese dann immer entsprechend für die nächste Checkbox, also z.B.:

Gruß Thomas