0
활성 셀의 유형이 double 또는 int 인 경우 선택한 행에 대한 요약을 빠르게 제공하려고합니다. 그리드가 모든 열에 의해 그룹화되지 않은 경우이 작동합니다. 그러나 격자가 하나 이상의 열로 그룹화되면 최상위 행이 선택 될 때 활성 셀이 없습니다. 행으로 그룹을 선택하면UltraWinGrid - 행 단위로 현재 셀/열 가져 오기
void ultraGrid_AfterSelectChange(object sender, AfterSelectChangeEventArgs e)
{
var ultraGrid = ((UltraGrid)sender);
var selected = ultraGrid.Selected;
var hasCells = selected.Cells != null && selected.Cells.Count > 0;
var hasRows = selected.Rows != null && selected.Rows.Count > 0;
if (!hasCells && !hasRows)
{
statusLabel.Text = string.Empty;
return;
}
UltraGridColumn activeColumn;
var activeCell = ultraGrid.ActiveCell;
if(activeCell == null )
{
var aUIElement = ultraGrid.DisplayLayout.UIElement.ElementFromPoint(ultraGrid.PointToClient(MousePosition));
activeColumn = (UltraGridColumn)aUIElement.GetContext(typeof(UltraGridColumn));
}
else activeColumn = activeCell.Column;
if(activeColumn == null || (activeColumn.DataType != typeof (double) && activeColumn.DataType != typeof (int)))
{
statusLabel.Text = string.Empty;
return;
}
//code to calculate summaries for selected rows or cells and active column
}
그러나 aUIElement.GetContext (대해서 typeof (UltraGridColumn))은 항상 null을 반환합니다. 행 단위로 그룹을 선택하면 활성 열/셀을 어떻게 얻습니까?
감사합니다. Rob. 마지막에 편집 텍스트를 추가하지 않고 편집을 시도했지만 편집을 완료하려면 6 개의 공백이 아닌 문자를 추가해야한다고했습니다. –