|
Модераторы: gambit, Partizan |
|
Glen |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 60 Регистрация: 15.1.2010 Репутация: нет Всего: нет |
У меня есть .Net приложение с WinForms. В нём есть объект System.Windows.Forms.DataGridView с datasource в виде BindingSource -> BindingList
Как мне [программно] отфильтровать строки – то есть сделать так чтобы DataGridView отображал только часть строк, имеющихся в том BindingList-е? Вот как примерно выглядит код: i
Как мне сделать так, чтобы после выполнения “myGrid.DataSource = bs” мой грид отобраал бы не все строки из list, а только скажем те где IObj.Code == 1? Причём myGrid не является readonly. Пользователь может там добавлять, обновлять и удалять строки. И мне нужно (таково условие задачи) чтобы все эти изменения немедленно отображались бы в том списке BindingList<IObj> list. Значит, я не могу просто создать у себя “клон” этого списка, отфильтровав ненужные элементы. Как написано выше, этот список приходит “из другого модуля программы”, который (модуль) я не контролирую и что-либо менять в нём не могу. Можно ли эту задачу решить? |
|||
|
||||
chupachups |
|
|||
Новичок Профиль Группа: Участник Сообщений: 0 Регистрация: 15.10.2008 Репутация: 1 Всего: 1 |
LINQ to Objects - myGrid.DataSource = list.Where(item => item.Code == 1).AsDataView()
или BindingSource.Filter читайте люди справку... Этот ответ добавлен с нового Винграда - http://vingrad.com |
|||
|
||||
Glen |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 60 Регистрация: 15.1.2010 Репутация: нет Всего: нет |
Спасибо за ответ Что касается BindingSource.Filter - нет, это у меня точно не сработает; уже пробовал Сам по себе BindingSource.Filter - всего лишь строка говорящая "как фильтровать". http://stackoverflow.com/questions/1...-as-datasource : As per http://msdn.microsoft.com/en-us/libr...ce.filter.aspx Only underlying lists that implement the IBindingListView interface support filtering. BindingList<T> does not appear to implement IBindingListView - and since it is the underlying list, your collection will not filter. А у меня как раз и испрльзуется BindingList<T>, которые НЕ реализует IBindingListView. Потому установка чего-то в BindingSource.Filter у меня ни к чему не приводит |
|||
|
||||
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Разработка Windows Forms | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |