C# CheckBox List Selected Items.Text to Labels.Text

这一生的挚爱 提交于 2019-12-06 11:36:19

问题


I have a CheckBoxList and 5 labels.

I would like the text value of these Labels to be set to the 5 selections made from the CheckBoxList after the user clicks on a button. How would I get this accomplished?

Thanks in advance.


回答1:


  • bind an event to a button,
  • iterate trough the Items property of the CheckBoxList
  • set the text value according to the selected property of the listitem

like:

protected void button_Click(object sender, EventArgs e)
{
    foreach (ListItem item in theCheckBoxList.Items)
    {
        item.Text = item.Selected ? "Checked" : "UnChecked";
    }
}

to add a value you could do:

 foreach (ListItem item in theCheckBoxList.Items)
 {
        item.Text = item.Selected ? item.Value  : "";
 }

or display al values in a mini-report:

    string test = "you've selected :";
    foreach (ListItem item in theCheckBoxList.Items)
    {
        test += item.Selected ? item.Value + ", " : "";
    }
    labelResult.Text = test;



回答2:


find selected items from CheckboxList by Lambda Linq:

var x = chkList.Items.Cast<ListItem>().Where(i => i.Selected);
    if (x!=null && x.Count()>0)
    {
         List<ListItem> lstSelectedItems = x.ToList();            
         //... Other ...
    }



回答3:


Why don't you have one label and on the button click do something like:

foreach (var li in CheckList1.Items)
{
   if(li.Checked)
      Label1.Text = li.Value + "<br />";
}

That may not be the exact syntax but something along those lines.




回答4:


Use this in LINQ:

foreach (var cbx3 in CheckBoxList2.Controls.OfType<CheckBox>().Where(cbx3 => cbx3.ID == s))
{
    cbx3.Checked = true;
}


来源:https://stackoverflow.com/questions/6061045/c-sharp-checkbox-list-selected-items-text-to-labels-text

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!