Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Узнать кол-во нефильтрованных строк в BandedGridView (DevExpress 9) / 4 сообщений из 4, страница 1 из 1
04.09.2013, 00:18
    #38386046
Vadim Romanenko
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Узнать кол-во нефильтрованных строк в BandedGridView (DevExpress 9)
Привет всем!

Есть некий сервис, который вешается на любой DevEx gridControl и выводит статистику - "Строк всего", "Отображается строк" и т.д.
Т.е. сервису при инициализации дается BandedGridView, он подписывается на события изменения кол-ва строк, а потом должен обновлять статистику. С "Отображается строк" все просто:
Код: c#
1.
displayed = _grid.RowCount;


А вот с "Строк всего" - на некоторых гридах не отрабатывает код:
Код: c#
1.
total = ((System.Data.DataView)(_grid.DataSource)).Table.Rows.Count;


Посмотрел - не отрабатывает в случае, если в качестве датасурса используется типизированный List :( Так вот! Возник вопрос. Как посчитать сколько всего строк в таблице? С учетом тех, которые скрыты в результате фильтрации?

Или - как посчитать количество строк в типизированном List, не зная собсно типа List-a?
...
Рейтинг: 0 / 0
04.09.2013, 00:59
    #38386059
Vadim Romanenko
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Узнать кол-во нефильтрованных строк в BandedGridView (DevExpress 9)
ПС: C#, .NET Framework 4, DevEx v2009 vol 1.10, версию поменять не могу
...
Рейтинг: 0 / 0
04.09.2013, 09:58
    #38386181
SerP1983
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Узнать кол-во нефильтрованных строк в BandedGridView (DevExpress 9)
DevExpress тут непричем. Со стандартным гридом все то же самое. Надо хотя бы примерно понимать, как работают привязки к гридам.

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
            
            System.Collections.IList list = null;
// вот это вот для DataTable
            if (dataSource is System.ComponentModel.IListSource)
                list = (dataSource as System.ComponentModel.IListSource).GetList();
// вот это вот для List<T>
            if (dataSource is System.Collections.IList)
                list = (dataSource as System.Collections.IList);

            var allCount = list.Count;
...
Рейтинг: 0 / 0
04.09.2013, 20:02
    #38387195
Vadim Romanenko
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Узнать кол-во нефильтрованных строк в BandedGridView (DevExpress 9)
Сергей, огромное спасибо!

Таки решение пришло в ответ на то, каким образом получить список элементов в типизованном List :)
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Узнать кол-во нефильтрованных строк в BandedGridView (DevExpress 9) / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]