2012-12-21 94 views
0
private void Form1_Load(object sender, EventArgs e) 
{ 
    int x = 0, y = 0; 
    var list = GetFilterItems().Select(g => g.GroupID).Distinct(); 
    ListBox lst; 
    foreach (var item in list) 
    { 
     lst = new ListBox(); 
     lst.Size = new Size(161, 82); 
     lst.Name = item.ToString(); 
     lst.SelectionMode = SelectionMode.MultiExtended; 

     lst.Location = new Point(x,y+25); 

     pnlFilters.Controls.Add(lst); 
     lst.Click += new EventHandler(lst_Click); 
     x += lst.Width+5; 
    }    
} 

void lst_Click(object sender, EventArgs e) 
{   
    ItemChanged(sender); 
} 

private void ItemChanged(object sender) 
{ 
    // Get the selected ListBox 
    ListBox selectedListViewControl = (ListBox)sender; 

    // Get the ListBox's items 
    List<FilterItem> currentFilterItems = selectedListViewControl.Items.Cast<FilterItem>().ToList(); 

    // Get the ListBox's selected items 
    List<FilterItem> selectedFilterItems = selectedListViewControl.SelectedItems.Cast<FilterItem>().ToList(); 
} 

在上面的代码中,我只拿到了1所选项目即使我从列表框中 选择多个项目如何获得多个项目表单列表框在动态列表框中如何获取多个选择项?

+1

'请给我soultion'是不正确的方式来问。请阅读[常见问题]和[问] –

+1

您正在为列表中的每个项目创建一个新的列表框。并处理点击事件。你为什么期望它有多件物品? – ryadavilli

+0

@ryadavilli我需要那个点击事件根据选定的列表框项目的父母和孩子列表框项目被填充 – Nayan

回答

0

只需创建一个列表框,然后添加所有项目到这个单一的一个

那么多选作品

相关问题