DataGridColumnStyle.GetPreferredSize Method (Graphics, Object)


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

When overridden in a derived class, gets the width and height of the specified value. The width and height are used when the user navigates to DataGridTableStyle using the DataGridColumnStyle.

Namespace:   System.Windows.Forms
Assembly:  System.Windows.Forms (in System.Windows.Forms.dll)

protected internal abstract Size GetPreferredSize(
	Graphics g,
	object value


Type: System.Drawing.Graphics

A Graphics object.

Type: System.Object

An object value for which you want to know the screen height and width.

Return Value

Type: System.Drawing.Size

A Size that contains the dimensions of the cell.

Use GetPreferredSize to determine the width a column should resize to, given a particular string or numeral.

The following code example uses the GetPreferredSize method to return the optimum size for a value.

public class Form1: Form
 protected DataGrid dataGrid1;

private void GetHeight(){
    MyGridColumn myGridColumn;
    // Get a DataGridColumnStyle of a DataGrid control.
    myGridColumn = (MyGridColumn) dataGrid1.TableStyles[0].
    // Create a Graphics object.
    Graphics g = this.CreateGraphics();
    Size s =myGridColumn.GetPrefSize(g, "A string");

public class MyGridColumn:DataGridTextBoxColumn{
   public Size GetPrefSize(Graphics g, string thisString){
      return this.GetPreferredSize(g,thisString);

.NET Framework
Available since 1.1
Return to top