2012-05-05 17 views
7

Mam kontroli CheckBoxListjak się wybrane pozycje liczyć w asp: CheckBoxList

<asp:CheckBoxList ID="chkselectedItems" Font-Size="12px" runat="server"> 
</asp:CheckBoxList> 

i stworzył ListItems na to dynamically.If i skontrolowane więcej niż jeden przedmiot z listy pole wyboru, jaki pojawia się wybrany Ilość poz użyciu

dzięki asp.net

+0

możliwe duplikat http: //stackoverflow.com/questions/3770874/how-to-return-selected-items-from-checkboxlist-control-in-asp-net, http://stackoverflow.com/questions/395454/how-to-loop- thru-a-checkboxlist-and-to-find-whats-checked-and-not-check –

Odpowiedz

6

Edit

int numSelected = 0; 
foreach (ListItem li in chkselectedItems.Items) 
{ 
if (li.Selected) 
{ 
numSelected = numSelected + 1; 
} 
} 
Response.Write("Total Number Of CheckBoxes Selected:"); 
Response.Write(numSelected); 

pre

public string[] CheckboxListSelections(System.Web.UI.WebControls.CheckBoxList list) 
{ 
ArrayList values = new ArrayList(); 
for(int counter = 0; counter < list.Items.Count; counter++) 
{ 
    if(list.Items[counter].Selected) 
    { 
    values.Add(list.Items[counter].Value); 
    }  
} 
return (String[]) values.ToArray(typeof(string)); 
} 
+0

Czy istnieje możliwość uzyskania dokładnej liczby? – ranjenanil

+0

@ranjenanil - to sprawi, że będziesz dokładnie liczyć ... –

+0

@ pranay..możesz opublikować wcześniejszą odpowiedź? – ranjenanil

3

Będziemy iterację CheckBoxList i użyć zmiennej licznik do zliczania wybrane elementy. Dla każdego elementu w CheckBoxList dodamy 1 do zmiennej licznika selCount jeśli element jest sprawdzany

int selCount = 0; 

for(int i= 0; i< chklst.Items.Count; i++) 
    if(chklst.Items[i].Selected) 
     selCount++; 

// Teraz selCount będzie zawierać liczbę wybranych pozycji

28

Używaj to pojedyncza linia kodu:

int selectedCount = chkselectedItems.Items.Cast<ListItem>().Count(li => li.Selected); 
+0

Naprawdę świetny ... Wielkie dzięki :);) –

0

użyciu LINQ

var count= chkmenuitemdef.Items.Cast<ListItem>().Where(c => c.Selected).Count(); 
Powiązane problemy