如何通过多次选择checkedListBox在DataGridView中设置数据?

时间:2014-01-02 05:58:22

标签: c# linq

我有一个iList,其中所有学生都被命名为AllStudent 我有4个checkedListBox我想根据checkedlistbox检查项目过滤网格数据 I want That Whwn

2 个答案:

答案 0 :(得分:1)

 try
            {

                List<lclsItemShdule> li = new List<lclsItemShdule>();
                List<lclsItemShdule> li2 = new List<lclsItemShdule>();
                foreach (clsMylist item in clbClass.CheckedItems)
                {
                    li.AddRange(ItemScheduleDetail.Where(w => w.ClassId ==   item.ItemData).ToList());
                }

                li2.AddRange(li);
                li.Clear();
                foreach (clsMylist item in clbMedium.CheckedItems)
                {
                    li.AddRange(li2.Where(w => w.MediumId == item.ItemData).ToList());
                }
                li2.Clear();
                li2.AddRange(li);
                li.Clear();
                foreach (clsMylist item in clbStream.CheckedItems)
                {
                    li.AddRange(li2.Where(w => w.StreamId == item.ItemData).ToList());
                }
                li2.Clear();
                li2.AddRange(li);
                li.Clear();
                foreach (clsMylist item in clbShift.CheckedItems)
                {
                    li.AddRange(li2.Where(w => w.ShiftId == item.ItemData).ToList());
                }
                li2.Clear();
                li2.AddRange(li);

                dgvItemSchedule.DataSource = null;
                dgvItemSchedule.DataSource = li2;

            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }

答案 1 :(得分:0)

这样做:

((DataTable)DataGridViews.DataSource).DefaultView.RowFilter =colmNameHere " like '%" + filterTextHere + "%'";

对于这个问题colmNameHere,比如Class,Medium,Section和filterTextHere就像Hostel,Primary,Hindi一样明智。