2010-08-15 14 views
8

Ich möchte den schnellsten/einfachsten Weg wissen zu überprüfen, ob ein CheckBoxList-Steuerelement überprüfte Elemente hat oder nicht, ich spreche über eine gesamte Checkbox-Liste als Ganzes, nicht ein einziges Kontrollkästchen . auch nur die SelectedIndex überprüfenÜberprüfen, ob CheckBoxList irgendwelche Werte hat

bool isAnySelected = checkBoxList.Items.Any(i => i.Selected); 

Antwort

6

sollte Dieses helfen

bool isAnySelected = CheckBoxList1.SelectedIndex != -1; 

Wenn nichts markiert ist, ist die SelectedIndex -1.

+0

Erinnern Sie sich: wenn diese Antwort zu Ihnen passt, markieren Sie es als akzeptiert :) –

+0

aus irgendeinem Grund, kann ich nicht scheinen/Zugriff auf die "Any" in VS, bist du dir sicher? – Viredae

+0

Es ist eine Linq Erweiterung Methode .. Sie müssen einen Verweis auf 'System.Linq' oder' System.Linq.Extensions' hinzufügen - nicht sicher, welche von ihnen! Und natürlich müssen Sie VS2008 + und .NET 3.5 haben –

12

Die Linq-Erweiterungsmethode ordentlich ist, aber Sie können:

1

Für alle, die 5 Jahre nach der ausgewählten Antwort hierher kommen, ist die Items-Auflistung nicht aufzählbar, daher funktioniert .Any(...) nicht. Sie können jedoch wie folgt vorgehen:

If cblCheckboxList.Items.Cast(Of ListItem).Any(Function(x) x.Selected) then... 
0

Die gewählte Antwort ist groß, aber jetzt können Sie einfach den Code ändern, indem OfType Funktion hinzufügen. Überprüfen Sie Folgendes:

Ich hoffe, das hilft.

Verwandte Themen