2013-12-10 16 views
0

我正在使用C#在Windows窗体应用程序中工作。我有一个复选框列表和一个ListView。我需要在列表视图中获取所选复选框的值。我在互联网上查了一下,我只有ASP.NET的例子,但我没有得到任何WinForms的例子。任何人都可以给我一个例子吗?提前致谢。在c#中使用windows应用程序获取列表中的复选框列表值.net

+0

显示你尝试过请,我们也许可以建立进一步上那。 – Max

回答

0

首先,这是一个很长的解释,让你明白发生了什么,下面你会找到相同的简短代码。

循环控制。如果你找到一个复选框,看看它是否被选中。如果被选中,添加的ListViewItem与复选框的值:

foreach(Control c in form.Controls) 
{ 
    if(c is CheckBox) 
    { 
     CheckBox cb = (CheckBox)c; 

     if(cb.Checked) 
     { 
      ListViewItem item = new ListViewItem(cb.Text); 
      yourListView.Items.Add(item); 
     } 
    } 
} 

有了一点的LINQ可以缩短这个代码为2行。循环在你的控制是复选框,并检查和添加ListViewItem的为他们每个人用自己的文本值:

foreach (var cb in form.Controls.OfType<CheckBox>().Where(x => x.Checked)) 
    yourListView.Items.Add(cb.Text) 
0

第一步:您需要使用CheckedItems属性CheckedListBox控制得到了CheckedItems集合。

步骤2:使用Add()方法将每个CheckedItem加入Listview

注:从你的问题I have one checkbox list and one ListView,我假设你有一个CheckedListBox控制和一个ListView控制

试试这个:

 private void button1_Click(object sender, EventArgs e) 
     { 
      foreach (Object chk in checkedListBox1.CheckedItems) 
      { 
        listView1.Items.Add(chk.ToString()); 
      } 
     } 
相关问题