![]() |
Модераторы: Partizan, gambit |
![]() ![]() ![]() |
|
thomas |
|
|||
![]() Доцент... почти ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1385 Регистрация: 3.10.2006 Где: " Сказочное королевство" Репутация: 6 Всего: 65 |
Приветствую уважаемое сообщество.
В FW есть класс BindingSource в пространстве имен System.Windows.Forms он унаследован среди прочих от IBindingListView. У данного класса есть свойство Filter. Но тут всплывает большущее НО. Если источник данных для BindingSource реализует этот интрефейс, то фильтрация работает. Из примеров приведенных в msdn следует, что только один источник данных для BindingSource дает возможность себя фильтровать, а именно класс DataView из пространства имен System.Data. А как же быть с остальными коллекциями? Что еще можно подсунуть BindingSource в качестве источника данных, что бы можно было их фильтровать? ![]() На фига нужно это свойство, если его можно применять только в одном случае. Тем более фильтровать можно сам объект DataView напрямую. Там есть свойство RowFilter. Кто что может сказать по этому поводу? ![]() -------------------- Крепко жму горло, искренне ваш Thomas. (С)vingrad Некоторые сорта флоры буквально за одно мгновение превращают нас в фауну! Проблемы негров шерифа не волнуют. |
|||
|
||||
Любитель |
|
|||
Программист-романтик ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3645 Регистрация: 21.5.2005 Где: Воронеж Репутация: 11 Всего: 92 |
Создаёшь свою реализацию IBindingList (можно наследовать от BindingList<T>) в нём реализуешь фильтрацию, сортировку и всё, что тебе нужно. Ну и биндишь грид на инстанс этого класса.
|
|||
|
||||
thomas |
|
|||
![]() Доцент... почти ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1385 Регистрация: 3.10.2006 Где: " Сказочное королевство" Репутация: 6 Всего: 65 |
Любитель,
Приветствую. Я и так имею BindingList<myClass>, который даю BindingSource как источник данных. Но нужно что бы источник данных был наследником IBindingListView И сколько я ни лопатил msdn в разделе коллекций в упор не вижу класса который является наследником этого хитрого интерфейса. Добавлено через 1 минуту и 35 секунд Да кстати IBindingList и соответственно BindingList<T> не поддерживают фильтрацию. -------------------- Крепко жму горло, искренне ваш Thomas. (С)vingrad Некоторые сорта флоры буквально за одно мгновение превращают нас в фауну! Проблемы негров шерифа не волнуют. |
|||
|
||||
diadiavova |
|
||||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 31 Всего: 142 |
thomas, думаю, Любитель имел в виду это
Лопатить мсдн для этого - лишнее, броузер объектов показывает производные классы, для интерфейсов это классы, их(интерфейсы) реализующие. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит ![]() |
||||
|
|||||
Любитель |
|
|||
Программист-романтик ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3645 Регистрация: 21.5.2005 Где: Воронеж Репутация: 11 Всего: 92 |
Хм, насчёт фильтра ты прав. Что ж - наследуемся от BindingList<T> и интерфейса IBindingListView (последний наследуется от IBindingList - так что большинство методов уже будут реализованы). Реализуем методы фильтрации, юзаем.
|
|||
|
||||
thomas |
|
|||
![]() Доцент... почти ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1385 Регистрация: 3.10.2006 Где: " Сказочное королевство" Репутация: 6 Всего: 65 |
Любитель,
Как я понял, ты предлагаешь танцы с бубнами. Значиться нужно самостоятельно писать свой класс типа BindingList<T> с наследованием и реализацией интерфейса IBindingListView. А потом уже этому классу присваивать значение - имеющийся List<Т> и потом его ( свой класс типа BindingList<T>) уже передавать классу BindingSource в качестве источника данных. Тогда последний позволит использовать его свойство Filter. Это сообщение отредактировал(а) thomas - 5.4.2009, 17:21 -------------------- Крепко жму горло, искренне ваш Thomas. (С)vingrad Некоторые сорта флоры буквально за одно мгновение превращают нас в фауну! Проблемы негров шерифа не волнуют. |
|||
|
||||
Любитель |
|
|||
Программист-романтик ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3645 Регистрация: 21.5.2005 Где: Воронеж Репутация: 11 Всего: 92 |
Ну.. Если хочешь можешь это называть так ![]() |
|||
|
||||
![]() ![]() ![]() |
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |