Ich habe eine Checkliste für asp.net, die an eine linq-to-sql-Datenquelle gebunden ist, und wenn ich die Elementanzahl meiner CheckBoxList beim Ereignis beim Laden der Seite überprüfe, ist es 0. Ich möchte die ausgewählten Elemente auf meiner Checkbox-Liste setzen können hier aber kann nicht.
Das ausgewählte Ereignis der Datenquelle wird nach dem Laden der Seite ausgelöst. Wenn dies der Fall ist, wie kann ich die ausgewählten Elemente in meiner Liste festlegen?
Wenn ich den SelectedValue auf einen Wert setze, wird nur der zuletzt ausgewählte Wert anstelle aller ausgewählten Werte angezeigt. Wie kann ich mehrere Werte in meiner Checkbox-Liste im Pageload-Ereignis auswählen?
Ich weiß, das ist ein alter Beitrag, aber ich hatte in letzter Zeit das gleiche Problem.
Um mehrere Elemente einer DataBound CheckBoxList auszuwählen, behandeln Sie das DataBound-Ereignis und durchlaufen Sie die Items-Auflistung, indem Sie die Selected-Eigenschaft für jedes Element nach Bedarf einzeln festlegen.
Wenn Sie die SelectedValue-Eigenschaft des Steuerelements festlegen, wird nur das letzte Element überprüft.
%Vor% public void SetValueCheckBoxList (CheckBoxList cbl, Zeichenkette sValues)
{
if (! Zeichenkette.IsNullOrEmpty (sValues))
{
ArrayList-Werte = StringToArrayList (sValues);
foreach (ListItem li in cbl.Items)
{
if (Werte. Enthält (li.Value))
li.Selected = wahr;
sonst
li.Selected = false;
}
}
}
Danke, slnavn2000
Klingt wie eine Frage zum Seitenlebenszyklus - Datenbindung.
Sie sollten sich wirklich (die Antworten auf) ansehen diese Frage .
Tags und Links asp.net .net-3.5 checkboxlist