|
//Column Adding:
sfGrid.Columns.Add(new GridTextColumn() { MappingName = "FirstName",
LineBreakMode = LineBreakMode.WordWrap });
//Event handling:
sfGrid.QueryRowHeight += SfGrid_QueryRowHeight;
private void SfGrid_QueryRowHeight(object sender, QueryRowHeightEventArgs e)
{
if (e.RowIndex != 0)
{
// Calculates and sets the height of the row based on its content.
e.Height = sfGrid.GetRowHeight(e.RowIndex);
sfGrid.InvalidateRowHeight(e.RowIndex);
e.Handled = true;
}
} |
|
//Add and Remove Renderers
sfGrid.CellRenderers.Remove("TextView");
sfGrid.CellRenderers.Add("TextView", new GridCellTextViewRendererExt());
//Custom renderer class:
public class GridCellTextViewRendererExt : GridCellTextViewRenderer
{
public GridCellTextViewRendererExt()
{
}
public override void OnInitializeDisplayView(DataColumnBase dataColumn, TextView view)
{
base.OnInitializeDisplayView(dataColumn, view);
if (dataColumn.GridColumn.MappingName == "FirstName")
{
view.SetTextColor(Color.Red);
}
}
protected override void OnUpdateCellValue(DataColumnBase dataColumn)
{
base.OnUpdateCellValue(dataColumn);
if ((dataColumn as IElement).Element != null)
{
var view = (((dataColumn as IElement).Element as GridCell).GetChildAt(0) as TextView);
if (view != null && dataColumn.GridColumn.MappingName == "FirstName")
{
view.SetTextColor(Color.Red);
}
}
}
} |