ColumnSizer class
Handles the sizing for all the columns in the SfDataGrid.
You can override any available methods in this class to calculate the column width based on your requirement and set the instance to the SfDataGrid.columnSizer.
class CustomGridColumnSizer extends ColumnSizer {
@override
double computeHeaderCellWidth(GridColumn column, TextStyle style) {
return super.computeHeaderCellWidth(column, style);
}
@override
double computeCellWidth(GridColumn column, DataGridRow row, Object? cellValue,
TextStyle textStyle) {
return super.computeCellWidth(column, row, cellValue, textStyle);
}
@override
double computeHeaderCellHeight(GridColumn column, TextStyle textStyle) {
return super.computeHeaderCellHeight(column, textStyle);
}
@override
double computeCellHeight(GridColumn column, DataGridRow row,
Object? cellValue, TextStyle textStyle) {
return super.computeCellHeight(column, row, cellValue, textStyle);
}
}
final CustomGridColumnSizer _customGridColumnSizer = CustomGridColumnSizer();
@override
Widget build(BuildContext context) {
return SfDataGrid(
source: _employeeDataSource,
columnSizer: _customGridColumnSizer,
columnWidthMode: ColumnWidthMode.auto,
columns: <GridColumn>[
GridColumn(columnName: 'id', label: Text('ID')),
GridColumn(columnName: 'name', label: Text('Name')),
GridColumn(columnName: 'designation', label: Text('Designation')),
GridColumn(columnName: 'salary', label: Text('Salary')),
);
}
Constructors
- ColumnSizer.new()
- Creates the ColumnSizer for SfDataGrid widget.
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- iconsOuterPadding ↔ EdgeInsetsGeometry
-
Defines the outer padding of the sort and filter icon's container. We need
to consider this padding to measure the auto-width and height calculation.
getter/setter pair
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
computeCellHeight(
GridColumn column, DataGridRow row, Object? cellValue, TextStyle textStyle) → double - Calculates the height of the cell based on the DataGridCell.value. You can override this method to perform the custom calculation for hight.
-
computeCellWidth(
GridColumn column, DataGridRow row, Object? cellValue, TextStyle textStyle) → double - Calculates the width of the cell based on the DataGridCell.value. You can override this method to perform the custom calculation for width.
-
computeHeaderCellHeight(
GridColumn column, TextStyle textStyle) → double - Calculates the height of the header cell based on the GridColumn.columnName.
-
computeHeaderCellWidth(
GridColumn column, TextStyle style) → double - Calculates the width of the header cell based on the GridColumn.columnName. You can override this method to perform the custom calculation for height.
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited