Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
PreferredColumnWidth Property

DataGridTableStyle.PreferredColumnWidth Property

Gets or sets the width used to create columns when a new grid is displayed.

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

[TypeConverterAttribute(typeof(DataGridPreferredColumnWidthTypeConverter))]
public int PreferredColumnWidth { get; set; }

Property Value

Type: System.Int32
The width used to create columns when a new grid is displayed.

The following code example demonstrates the use of this member.


private void CreateAndBindDataSet(DataGrid myDataGrid)
{
   DataSet myDataSet = new DataSet("myDataSet");
   DataTable myEmpTable = new DataTable("Employee");
   // Create two columns, and add them to employee table.
   DataColumn myEmpID = new DataColumn("EmpID", typeof(int));
   DataColumn myEmpName = new DataColumn("EmpName");
   myEmpTable.Columns.Add(myEmpID);
   myEmpTable.Columns.Add(myEmpName);
   // Add table to DataSet.
   myDataSet.Tables.Add(myEmpTable);
   // Populate table.
   DataRow newRow1;
   // Create employee records in employee Table.
   for(int i = 1; i < 6; i++)
   {
      newRow1 = myEmpTable.NewRow();
      newRow1["EmpID"] = i;
      // Add row to Employee table.
      myEmpTable.Rows.Add(newRow1);
   }
   // Give each employee a distinct name.
   myEmpTable.Rows[0]["EmpName"] = "Alpha";
   myEmpTable.Rows[1]["EmpName"] = "Beta";
   myEmpTable.Rows[2]["EmpName"] = "Omega";
   myEmpTable.Rows[3]["EmpName"] = "Gamma";
   myEmpTable.Rows[4]["EmpName"] = "Delta";
   // Bind DataGrid to DataSet.
   myDataGrid.SetDataBinding(myDataSet, "Employee");
}

private void Form1_Load(object sender, System.EventArgs e)
{
   // Set and Display myDataGrid.
   myDataGrid.DataMember = "";
   myDataGrid.Location = new System.Drawing.Point(72, 32);
   myDataGrid.Name = "myDataGrid";
   myDataGrid.Size = new System.Drawing.Size(240, 200);
   myDataGrid.TabIndex = 4;
   // Add it to controls.
   Controls.Add(myDataGrid);
   CreateAndBindDataSet(myDataGrid);
   myDataGridTableStyle.MappingName = "Employee";
   // Set other properties.
   myDataGridTableStyle.AlternatingBackColor = Color.LightGray;
   // Add DataGridTableStyle instances to GridTableStylesCollection.
   myDataGridTableStyle.PreferredColumnWidth = 100;
   myColWidth.Text = "";
   myDataGrid.TableStyles.Add(myDataGridTableStyle);
   myDataGridTableStyle.PreferredColumnWidthChanged +=
         new EventHandler(MyDelegatePreferredColWidthChanged);
}

private void MyDelegatePreferredColWidthChanged(object sender, EventArgs e)
{
   MessageBox.Show("Preferred Column width has changed");
}

private void myButton_Click(object sender, System.EventArgs e)
{
   try
   {
      if( myColWidth.Text != "" )
      {
         int newwidth = myDataGridTableStyle.PreferredColumnWidth = 
            int.Parse(myColWidth.Text);
         // Dispose datagrid and datagridtablestyle and then create.
         myDataGrid.Dispose();
         myDataGridTableStyle.Dispose();
         myDataGrid = new DataGrid();
         myDataGridTableStyle = new DataGridTableStyle();
         myDataGrid.DataMember = "";
         myDataGrid.Location = new System.Drawing.Point(72, 32);
         myDataGrid.Name = "myDataGrid";
         myDataGrid.Size = new System.Drawing.Size(240, 200);
         myDataGrid.TabIndex = 4;
         Controls.Add(myDataGrid);
         CreateAndBindDataSet(myDataGrid);
         myDataGridTableStyle.MappingName = "Employee";
         // Set other properties.
         myDataGridTableStyle.AlternatingBackColor = Color.LightGray;
         // Add DataGridTableStyle instances to GridTableStylesCollection.
         myDataGridTableStyle.PreferredColumnWidth = newwidth;
         myColWidth.Text = "";
         myDataGrid.TableStyles.Add(myDataGridTableStyle);
         myDataGridTableStyle.PreferredColumnWidthChanged += 
            new EventHandler(MyDelegatePreferredColWidthChanged);
      }
      else
      {
         MessageBox.Show("Please enter a number");
      }
   }
   catch(Exception ex)
   {
      MessageBox.Show(ex.Message);
   }
}


.NET Framework

Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Community Additions

ADD
Show:
© 2015 Microsoft