BoldSignEasily embed eSignatures in your .NET applications. Free sandbox with native SDK available.
int levelOffsetInPixels = 6;
int maximumLevels = 3; // reserve space for 3 more levels (3*4)
protected override void OnLoad(EventArgs e)
{
base.OnLoad (e);
int extraHeight = levelOffsetInPixels * maximumLevels;
this.groupingGrid1.GridGroupDropArea.Model.RowHeights[2] = 18 + extraHeight;
this.groupingGrid1.GridGroupDropArea.Height += extraHeight;
this.groupingGrid1.GridGroupDropArea.Parent.Height += extraHeight;
this.groupingGrid1.GridGroupDropArea.PrepareViewStyleInfo += new GridPrepareViewStyleInfoEventHandler(GridGroupDropArea_PrepareViewStyleInfo);
}
private void GridGroupDropArea_PrepareViewStyleInfo(object sender, GridPrepareViewStyleInfoEventArgs e)
{
GridGroupDropArea grid = (GridGroupDropArea) sender;
TableDescriptor td = grid.Model.GridTableModel.Table.TableDescriptor;
if (e.RowIndex == 2)
{
int extraHeight = levelOffsetInPixels * maximumLevels;
int groupedColumn = grid.Model.ColIndexToField(e.ColIndex);
int offset = Math.Min(maximumLevels-1, groupedColumn) * levelOffsetInPixels;
e.Style.BorderMargins.Top = offset;
e.Style.BorderMargins.Bottom = extraHeight - offset;
e.Style.BackColor = grid.Model.TableStyle.BackColor;
}
}
Stefan
private void GridGroupDropArea_PrepareViewStyleInfo(object sender, GridPrepareViewStyleInfoEventArgs e)
{
GridGroupDropArea grid = (GridGroupDropArea) sender;
TableDescriptor td = grid.Model.GridTableModel.Table.TableDescriptor;
if (e.RowIndex == 2)
{
int extraHeight = levelOffsetInPixels * maximumLevels;
int groupedColumn = grid.Model.ColIndexToField(e.ColIndex);
int offset = Math.Min(maximumLevels-1, groupedColumn) * levelOffsetInPixels;
e.Style.BorderMargins.Top = offset;
e.Style.BorderMargins.Bottom = extraHeight - offset;
e.Style.BackColor = grid.Model.TableStyle.BackColor;
if (e.RowIndex == hoverRowIndex && e.ColIndex == hoverColIndex)
{
e.Style.Font.Bold = true;
}
}
}
int hoverRowIndex, hoverColIndex;
private void GridGroupDropArea_CellMouseHoverEnter(object sender, GridCellMouseEventArgs e)
{
hoverRowIndex = e.RowIndex;
hoverColIndex = e.ColIndex;
}
private void GridGroupDropArea_CellMouseHoverLeave(object sender, GridCellMouseEventArgs e)
{
hoverRowIndex = -1;
hoverColIndex = -1;
}
Stefan
>And i''m trying to change the weight of the cells dynamicaly trying to catch the gridgrouparea.dragenter and dragleave but it never hits these events.