ListBox.ColumnWidth Property

Definition

Gets or sets the width of columns in a multicolumn ListBox.

public:
 property int ColumnWidth { int get(); void set(int value); };
public int ColumnWidth { get; set; }
member this.ColumnWidth : int with get, set
Public Property ColumnWidth As Integer

Property Value

The width, in pixels, of each column in the control. The default is 0.

Exceptions

A value less than zero is assigned to the property.

Examples

The following code example demonstrates a simple two-column ListBox.

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

public class Form1 : Form
{
    private ListBox listBox1;

    public Form1()
    {
        InitializeComponent();
    }
    [STAThread]
    static void Main()
    {
        Application.EnableVisualStyles();
        Application.SetCompatibleTextRenderingDefault(false);
        Application.Run(new Form1());
    }

    private void InitializeComponent()
    {
        this.listBox1 = new System.Windows.Forms.ListBox();
        this.SuspendLayout();
        // 
        // listBox1
        // 
        this.listBox1.FormattingEnabled = true;
        this.listBox1.HorizontalScrollbar = true;
        this.listBox1.Items.AddRange(new object[] {
            "Item 1, column 1",
            "Item 2, column 1",
            "Item 3, column 1",
            "Item 4, column 1",
            "Item 5, column 1",
            "Item 1, column 2",
            "Item 2, column 2",
            "Item 3, column 2"});
        this.listBox1.Location = new System.Drawing.Point(0, 0);
        this.listBox1.MultiColumn = true;
        this.listBox1.Name = "listBox1";
        this.listBox1.ScrollAlwaysVisible = true;
        this.listBox1.Size = new System.Drawing.Size(120, 95);
        this.listBox1.TabIndex = 0;
        this.listBox1.ColumnWidth = 85;
        // 
        // Form1
        // 
        this.ClientSize = new System.Drawing.Size(292, 273);
        this.Controls.Add(this.listBox1);
        this.Name = "Form1";
        this.ResumeLayout(false);

    }
}
Imports System.Collections.Generic
Imports System.ComponentModel
Imports System.Data
Imports System.Drawing
Imports System.Text
Imports System.Windows.Forms

Public Class Form1
   Inherits Form
   Private listBox1 As ListBox
   
   
   Public Sub New()
      InitializeComponent()
   End Sub
   
   <STAThread()>  _
   Shared Sub Main()
      Application.EnableVisualStyles()
      Application.SetCompatibleTextRenderingDefault(False)
      Application.Run(New Form1())
   End Sub
   
   Private Sub InitializeComponent()
      Me.listBox1 = New System.Windows.Forms.ListBox()
      Me.SuspendLayout()
      ' 
      ' listBox1
      ' 
      Me.listBox1.FormattingEnabled = True
      Me.listBox1.HorizontalScrollbar = True
      Me.listBox1.Items.AddRange(New Object() {"Item 1, column 1", "Item 2, column 1", "Item 3, column 1", "Item 4, column 1", "Item 5, column 1", "Item 1, column 2", "Item 2, column 2", "Item 3, column 2"})
      Me.listBox1.Location = New System.Drawing.Point(0, 0)
      Me.listBox1.MultiColumn = True
      Me.listBox1.Name = "listBox1"
      Me.listBox1.ScrollAlwaysVisible = True
      Me.listBox1.Size = New System.Drawing.Size(120, 95)
      Me.listBox1.TabIndex = 0
      Me.listBox1.ColumnWidth = 85
      ' 
      ' Form1
      ' 
      Me.ClientSize = New System.Drawing.Size(292, 273)
      Me.Controls.Add(listBox1)
      Me.Name = "Form1"
      Me.ResumeLayout(False)
   End Sub
End Class

Remarks

If you set the value to zero (0), a default width is assigned to each column. If the ListBox is a multicolumn ListBox, this property returns the current width of each column in the list. You can use this property to ensure that each column in a multicolumn ListBox can properly display its items.

Applies to