Ereignishandler für groupBox mit radioButtons in C #

7

Ich habe einige radionButtons in der groupBox und ich muss etwas tun, was ich "radiobuttons.checked changed" nennen könnte. Ich habe versucht, es in der Liste der Ereignisse zu finden, aber ich konnte nicht die richtige finden.

Bearbeiten: Um es klarer zu machen: Ich muss wissen, ob es einen Handel für die Handler-Methode für die GoupBox gibt, nicht für Single RadioButton. Ich weiß, wie man radiButton.checkedChanged verwendet, aber es ist nicht das, was ich finde .. Oder anders muss ich wissen, welche Optionen die GroupBox hat, um zu beobachten, was in dieser GroupBox passiert - ich meine nur die Handler für die GroupBox. Ich finde den Handler "in der Gruppenbox ist etwas passiert" oder ähnlich, falls vorhanden.

Es befindet sich in WFA (Windows Presentation Application) in Visual Studio 2012.

    
user1097772 22.06.2012, 16:44
quelle

9 Antworten

21

Ich denke, was Sie tun möchten, ist das CheckedChanged-Ereignis der RadioButtons mit demselben Handler zu verbinden.

%Vor%     
davenewza 22.06.2012 16:56
quelle
4

Soweit ich weiß, ist dafür nichts eingebaut.

Setzen Sie die Tag-Eigenschaft auf eine Art Indikator (0 bis n).

Fügen Sie einen CheckChangedHandler hinzu

Zeigen Sie alle Schaltflächen CheckChanged-Ereignisse darauf an.

dann etwas wie.

%Vor%

Wenn Sie ein paar davon haben, würde ich mir eine Radiogruppen-Komponente ansehen.

    
Tony Hopkinson 22.06.2012 17:02
quelle
2

Ich hatte das gleiche Problem: eine Gruppenbox mit dem Namen Button Type (gbxButtonType) mit 6 Optionsfeldern und einer anderen Gruppenbox namens Icon Type (gbxIconType) mit 8 Optionsfeldern Wenn der Benutzer in jedem Gruppenfeld eine Optionsschaltfläche auswählt, wird eine MessageBox mit der ausgewählten Auswahl angezeigt, nachdem auf das DisplayButton geklickt wurde. Mein Problem war, dass die Gruppenfelder kein CheckedChanged-Ereignis hatten. Die Lösung von AKN hat perfekt funktioniert:

%Vor%     
Emanuel 17.10.2013 13:34
quelle
1

System.Windows.Forms.RadioButton.CheckedChanged

ist das Ereignis, das Sie brauchen

Machen Sie so etwas wie:

%Vor%     
Big Endian 22.06.2012 16:55
quelle
1

Ich denke, dass Sie die Auswahl einiger Optionsfelder innerhalb einer Groupbox mit dem Groupbox-Steuerelement selbst handhaben möchten.

Vielleicht möchten Sie dies im Grunde genommen, um Code-Wiederholungen zu vermeiden.

(d. h.) Hinzufügen eines Prüfänderungsereignisses für alle Optionsfelder im Designer, was bei mehr Kontrolle mühsam sein kann. Da es bereits in einer Gruppe vorhanden ist, verwenden Sie das Gruppensteuerelement, um Steuerelemente mit darin zu manipulieren und die Ereignisse festzulegen.

So habe ich Ihr Problem verstanden und daher die unten aufgeführte Lösung.

Legen Sie einen gemeinsamen Handler für alle Optionsfeldsteuerelemente im Gruppenfeld

fest %Vor%

Innerhalb des Handlers können Sie festlegen, welche Schaltfläche wie von anderen angegeben geändert wurde, und die erforderlichen Maßnahmen ergreifen.

    
AKN 13.03.2013 13:42
quelle
1

// Hier geht's mit freundlicher Genehmigung von Jock Frank Halliday

%Vor%     
jock spanker McHalliday 12.01.2016 11:11
quelle
0
%Vor%     
Paulo Cesar 13.02.2017 14:52
quelle
0

Sie können es vielleicht mit Timer machen, aber das ist nur schlecht für die Optimierung, die einfache Lösung ist, dass Sie für jede Radiobutton einfach nur eine Funktion als ChekedChanged-Ereignis hinzufügen.

    
János Márk Kirsch 21.02.2018 10:46
quelle
0

Die Gruppenbox beschränkt nur ein ausgewähltes Optionsfeld

So Setp1: Sie können jedem Radioknopf

einen "CheckedChanged" Event-Handler zuweisen %Vor%

Und Setp2: implementieren diesen Event-Handler wie folgt (Filter nach Radiobutton-Text)

%Vor%     
Li Kevin 28.02.2018 04:26
quelle