Как можно динамически добавлять новые полосы в элемент управления Infragistics UltraGrid? - PullRequest
1 голос
/ 10 марта 2009

Мне нужно представить иерархические данные в элементе управления Winforms UltraGrid. Данные содержатся в объекте BindingList, который назначен элементу управления BindingSource. Объекты, содержащиеся в коллекции, имеют свойство «Children», которое представляет собой еще один BindingList, содержащий эти объекты. Поскольку объем наших данных большой, я заполняю сетку только элементами первого уровня. Все идет нормально. Затем я хочу получать дочерние элементы подряд каждый раз, когда пользователи нажимают на них. Как мне это сделать? Я пытался сделать это на событии MouseUp, но это не выглядит хорошо. Кроме того, дочерние объекты должны быть извлечены и показаны одновременно, и в данный момент я должен щелкнуть несколько раз, чтобы они появились.

Большое спасибо.

Привет.

Ответы [ 2 ]

1 голос
/ 07 декабря 2011

Ель всего, вы не можете добавить группу. Вы можете добавить подпункт в коллекцию Children, и группа будет создана автоматически.

Это специальное событие с именем BeforeRowExpanded . Он срабатывает, когда пользователь нажимает на индикатор расширения. Вы можете поместить туда свой код загрузки данных.

Извлечение frmAccessView.cs в решении SamplesExplorer. Он доступен в пакете образцов от Infragistics.

0 голосов
/ 10 марта 2009

Я не знаю, какую версию UltraGrid вы используете, но попробуйте события BeforeCellActivate или BeforeRowActivate .

...