2013-12-18 5 views
0

У меня есть ультрарадикальный столбец «A», который имеет флажок. Как узнать, есть ли во всех моих столбцах этот столбец? Поскольку существует общий флажок, который можно использовать для изменения состояния столбца «A» во всех моих строках с помощью функции CheckAll(), поэтому он должен быть способом узнать, проверены ли все мои строки в этом столбце, правильно?Заголовок Ultragrid checkbox

Заранее благодарен.

Btw: Я попытался использовать функцию GetHeaderCheckedState, но поскольку у меня есть группа по строкам, мне нужно использовать функцию GetAllNonGroupByRows(), которая возвращает массив UltraGridRow, а функция GetHeaderCheckedState получает только RowsCollection ... Есть ли способ преобразовать UltraGridRow [] в RowsCollection?

PS: Я не знаю, делает ли это какую-то разницу, но это не-веб-приложение на C#.

ответ

0

В зависимости от вашего сценария вы можете использовать событие BeforeHeaderCheckStateChanged или AfterHeaderCheckStateChanged на UltraGrid. Это позволит вам использовать свойство RowCollection на входящем EventArgs. Например:

private void ultraGrid1_BeforeHeaderCheckStateChanged(object sender, BeforeHeaderCheckStateChangedEventArgs e) 
{ 
    ultraGrid1.DisplayLayout.Bands[0].Columns[0].GetHeaderCheckedState(e.Rows); 
} 

Если этот подход не подходит для вашего сценария, вы можете использовать родительские строки. Например:

ultraGrid1.DisplayLayout.Bands[0].Columns[0].GetHeaderCheckedState(ultraGrid1.ActiveRow.ChildBands[0].Rows);