Erklären Sie dies: CheckBox checkbox = (CheckBox) sender;

8

Beim Durchlaufen der CheckBox habe ich festgestellt, dass

geschrieben ist %Vor%

am checkBox1_CheckedChanged Ereignis.

Bitte erläutern Sie, was es bedeutet?

    
Shalni 23.09.2010, 11:21
quelle

6 Antworten

12

Die Zeile wandelt einfach sender in CheckBox um.

Warum?

Die Unterschrift des Ereignishandlers für das CheckedChanged -Ereignis lautet:

%Vor%

Also musst du sender zurück auf ein CheckBox setzen, wenn du eine CheckBox spezifische Funktionalität verwenden willst - object hat nicht viel, was du benutzen kannst ...

Auf diese Weise kann die Variable checkbox verwendet werden, um die Checkbox-ID zu erhalten und das Kontrollkästchen zu aktivieren.

    
Oded 23.09.2010, 11:23
quelle
5

Hier ist ein Beispiel. In Gridview oder Repeater wollen wir alle Optionen auswählen. Wie Sie gesehen haben auf Ihrer Mailbox.Es gibt ein einzelnes Kontrollkästchen, wenn Sie auf alles klicken wird. Code wird Ihnen besser erklären.

%Vor%

Ich hoffe, es funktioniert.

    
PrateekSaluja 23.09.2010 11:49
quelle
3

Ich nehme an, die Methodendefinition ist in etwa so:

%Vor%

Im Grunde wird hier die sender Variable, die nur als generisches Objekt deklariert ist, in eine (viel "nützlichere") CheckBox Variable umgewandelt.

Dies wird normalerweise getan, weil Sie um die "spezifischen" Eigenschaften einer CheckBox zugreifen müssen.

Zum Beispiel

%Vor%

funktioniert nicht. Du müsstest das tun:

%Vor%

was natürlich sehr hässlich ist, so dass es viel einfacher ist eine neue CheckBox Variable zu deklarieren und dann einfach

%Vor%

ohne Casting.

    
Earlz 23.09.2010 11:24
quelle
1

Der Parameter sender (der als reines Object deklariert ist) wird in CheckBox umgewandelt, da Sie anscheinend wissen, dass der Absender dieses Ereignisses immer eine CheckBox ist.

    
Hans Kesting 23.09.2010 11:24
quelle
1

Als Oded sagt, Sie brauchen die Besetzung wegen der Handler Signatur.

Sie könnten im Ereignishandler checkBox1 anstatt der Typumwandlung verwenden, aber mit sender umgehen, können Sie die CheckChanged Logik auch für andere Steuerelemente wiederverwenden - obwohl in In diesem Fall sollte es in etwas wie:

umgestaltet werden %Vor%     
snemarch 23.09.2010 11:35
quelle
0

Die CheckBox-Klasse stellt ein Kontrollkästchen dar, das Benutzer auswählen und löschen können. In diesem Thema werden Sie mit dem CheckBox-Steuerelement in Windows Presentation Foundation (WPF) vertraut gemacht und beschrieben, wie Sie CheckBox-Elemente in XAML (Extensible Application Markup Language) und C # erstellen, Ereignishandler in C # festlegen, CheckBox-Steuerelemente mit Rich Content wie Bildern erstellen. und verwenden Sie Styling, um das Erscheinungsbild des Steuerelements zu ändern. Hier habe ich eine Probe für Sie gegeben.

%Vor%

Der Code dahinter ist

%Vor%     
Hemant Kumar 23.09.2010 12:18
quelle

Tags und Links