0% found this document useful (0 votes)
5 views

List Box & ComboBox in C Sharp

The document provides an overview of the ListBox and ComboBox classes in C# Windows Forms, detailing their properties, methods, and events. It explains how to create these controls both at design-time and run-time, along with sample code snippets for adding and moving items. Additionally, it lists important properties and events associated with both controls.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views

List Box & ComboBox in C Sharp

The document provides an overview of the ListBox and ComboBox classes in C# Windows Forms, detailing their properties, methods, and events. It explains how to create these controls both at design-time and run-time, along with sample code snippets for adding and moving items. Additionally, it lists important properties and events associated with both controls.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 14

C# | ListBox Class

In Windows Forms, ListBox control is used to show multiple elements in a list, from which a user can
select one or more elements and the elements are generally displayed in multiple columns. The ListBox
class is used to represent the windows list box and also provide different types of properties, methods,
and events. It is defined under System.Windows.Forms namespace. The ListBox class contains three
different types of collection classes, i.e.

• ListBox.ObjectCollection: This class holds all the elements contained in the ListBox control.

• ListBox.SelectedObjectCollection: This class holds a collection of the selected items which is a


subset of the items contained in the ListBox control.

• ListBox.SelectedIndexCollection: This class holds a collection of the selected indexes, which is a


subset of the indexes of the ListBox.ObjectCollection and these indexes specify elements that are
selected.

In C# you can create a ListBox in the windows form by using two different ways:

1. Design-Time: It is the easiest way to create a ListBox as shown in the following steps:

• Step 1: Create a windows form as shown in the below image:


Visual Studio -> File -> New -> Project -> WindowsFormApp

• Step 2: Next, drag and drop the ListBox control from the toolbox to the form.
• Step 3: After drag and drop you will go to the properties of the ListBox control to modify ListBox
according to your requirement.
Output:

Code for Add Item on button Click


private void button1_Click(object sender, EventArgs e)
{
listBox1.Items.Add(textBox1.Text);

Code for Move Item (→) on button Click


if (listBox1.SelectedIndex > -1)
{
listBox2.Items.Add(listBox1.SelectedItem);
listBox1.Items.RemoveAt(listBox1.SelectedIndex);
}

Code for Move Item () on button Click

if (listBox2.SelectedIndex > -1)


{
listBox1.Items.Add(listBox2.SelectedItem);
listBox2.Items.RemoveAt(listBox2.SelectedIndex);
}

Code for Move Selected Item ( Selected Move→) on button Click

foreach (var items in listBox1.SelectedItems)


{

listBox2.Items.Add(items);
//listBox1.Items.RemoveAt(listBox1.SelectedItems[items]);

}
for(int i = listBox1.SelectedItems.Count - 1; i >= 0; i--)
{
listBox1.Items.Remove(listBox1.SelectedItems[i]);

2. Run-Time: It is a little bit trickier than the above method. In this method, you can create a ListBox
control programmatically with the help of syntax provided by the ListBox class. The following steps show
how to set the create ListBox dynamically:

Step 1: Create a ListBox control using the ListBox() constructor is provided by the ListBox class.

// Creating a ListBox control


ListBox mylist = new ListBox();
Step 2: After creating ListBox control, set the property of the ListBox control provided by the ListBox
class.
ListBox mylist = new ListBox();
mylist.Location = new Point(287, 109);
mylist.Size = new Size(120, 95);
mylist.ForeColor = Color.Purple;
mylist.Items.Add(123);
mylist.Items.Add(456);
mylist.Items.Add(789);
Step 3: And last add this ListBox control to the form using the following statement:
// Adding ListBox control
// to the form
this.Controls.Add(mylist);
Example:

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

namespace WindowsFormsApp25 {

public partial class Form1 : Form {

public Form1()
{
InitializeComponent();
}

private void Form1_Load(object sender, EventArgs e)


{

// Creating and setting the


// properties of ListBox
ListBox mylist = new ListBox();
mylist.Location = new Point(200, 109);
mylist.Size = new Size(120, 95);
mylist.ForeColor = Color.Purple;
mylist.Items.Add(123);
mylist.Items.Add(456);
mylist.Items.Add(789);

// Adding ListBox control


// to the form
this.Controls.Add(mylist);
}
}
}

Output:
Constructor

Constructor Description

ListBox() This Constructors is used to initialize a new instance of the ListBox class.

Properties

Property Description

This property is used to get or set a value that indicates whether the control resizes
AutoSize
based on its contents.

BackColor This property is used to get or set the background color for the control.

BorderStyle This property indicates the border style for the control.

Font This property is used to get or set the font of the text displayed by the control.

ForeColor This property is used to get or set the foreground color of the control.

Height This property is used to get or set the height of the control.
This property is used to get or set the coordinates of the upper-left corner of the
Location
ListBox control relative to the upper-left corner of its form.

Name This property is used to get or set the name of the control.

This property is used to get or set a value that shows whether the user can press the
TabStop
TAB key to provide the focus to the ListBox.

Size This property is used to get or set the height and width of the control.

Text This property is used to get or set the text to be displayed in the RichTextBox control.

This property is used to get or set a value indicating whether the control and all its
Visible
child controls are displayed.

Width This property is used to get or set the width of the control.

ColumnWidth This property is used to get or set the width of columns in a multicolumn ListBox.

This property is used to get or set the width by which the horizontal scroll bar of a
HorizontalExtent
ListBox can scroll.

ItemHeight This property is used to get or set the height of an item in the ListBox.

Items This property is used to get the items of the ListBox.

PreferredHeight This property is used to get the combined height of all items in the ListBox.

This property is used to get or set the zero-based index of the currently selected item
SelectedIndex
in a ListBox.
SelectedItem This property is used to get or set the currently selected item in the ListBox.

This property is used to get a collection that contains the zero-based indexes of all
SelectedIndices
currently selected items in the ListBox.

This property is used to get or set a value indicating whether the items in the ListBox
Sorted
are sorted alphabetically.

TopIndex This property is used to get or set the index of the first visible item in the ListBox.

ComboBox in C#

••
In Windows Forms, ComboBox provides two different features in a single control,
it means ComboBox works as both TextBox and ListBox. In ComboBox, only one
item is displayed at a time and the rest of the items are present in the drop-down
menu. The ComboBox is a class in C# and defined
under System.Windows.Forms Namespace. You can create ComboBox using the
two different ways:

1. Design-Time: It is the easiest method to create a ComboBox control using the


following steps:

Step 1: Create a windows form as shown in the below image:

• Visual Studio -> File -> New -> Project -> WindowsFormApp
• Step 2: Drag the ComboBox control from the ToolBox and drop it on the
windows form. You are allowed to place a ComboBox control anywhere on
the windows form according to your need.


• Step 3: After drag and drop you will go to the properties of the ComboBox
control to set the properties of the ComboBox according to your need.

Output:

Run-Time: It is a little bit trickier than the above method. In this method, you can
set create your own ComboBox control using the ComboBox class. Steps to create a
dynamic ComboBox:
• Step 1: Create a combobox using the ComboBox() constructor is provided
by the ComboBox class.
// Creating combobox using ComboBox class
ComboBox mybox = new ComboBox();
• Step 2: After creating ComboBox, set the properties of the ComboBox
provided by the ComboBox class.
// Set the location of the ComboBox
mybox.Location = new Point(327, 77);

// Set the size of the ComboBox


mybox.Size = new Size(216, 26);

// Add items in the ComboBox


mybox.Items.Add("C#");
mybox.Items.Add("Java");
mybox.Items.Add("Scala");
mybox.Items.Add("C");
mybox.Items.Add("C++");
• Step 3: And last add this ComboBox control to form using Add() method.
// Add this ComboBox to the form
this.Controls.Add(mybox);
• Example:
CSharp
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace WindowsFormsApp18 {

public partial class Form1 : Form {

public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
// Creating and setting the properties of label
Label l = new Label();
l.Location = new Point(22, 50);
l.AutoSize = true;
l.Text = "Select Programming Language";

// Adding this label to the form


this.Controls.Add(l);

// Creating and setting the properties of comboBox


ComboBox mybox = new ComboBox();
mybox.Location = new Point(32, 80);
mybox.Size = new Size(216, 26);
mybox.Items.Add("C#");
mybox.Items.Add("Java");
mybox.Items.Add("Scala");
mybox.Items.Add("C");
mybox.Items.Add("C++");

// Adding this ComboBox to the form


this.Controls.Add(mybox);
}
}
}

• Output:

Properties of the ComboBox


Property Description
BackColor This property is used to set the background color for the ComboBox control.

DropDownHeight This property is used to set the height in pixels of the drop-down portion of the
ComboBox control.

DropDownStyle This property is used to set a value specifying the style of the ComboBox
control.

DropDownWidth This property is used to set the width of the drop-down portion of a ComboBox
control.

Font This property is used to set the font of the text displayed by the ComboBox
control.

ForeColor This property is used to set the foreground color of the ComboBox control.

Height This property is used to set the height of the ComboBox control.

Items This property is used to get an object representing the collection of the items
contained in this ComboBox control.

MaxDropDownItems This property is used to set the maximum number of items to be shown in the
drop-down portion of the ComboBox control.

MaxLength This property is used to set the number of characters a user can type into the
ComboBox control.

Name This property is used to set the name of the ComboBox control.

SelectedItem This property is used to set currently selected item in the ComboBox.

Size This property is used to set the height and width of the ComboBox control.

Sorted This property is used to set a value indicating whether the items in the combo
box are sorted.

Text This property is used to set the text associated with this ComboBox control.

Visible This property is used to set a value indicating whether the control and all its
child controls are displayed.

Important Events
Event Description
Click This event occurs when the ComboBox control is clicked.

DragDrop This event occurs when a drag-and-drop operation is completed.

DropDown This event occurs when the drop-down portion of a ComboBox is


shown.

DropDownClosed This event occurs when the drop-down portion of the ComboBox
is no longer visible.

DropDownStyleChanged This event occurs when the DropDownStyle property has


changed.
Leave This event occurs when the input focus leaves the ComboBox
control.

MouseClick This event occurs when the ComboBox control is clicked by the
mouse.

MouseDoubleClick This event occurs when the ComboBox control is double clicked
by the mouse.

MouseDown This event occurs when the mouse pointer is over the ComboBox
control and a mouse button is pressed.

MouseEnter This event occurs when the mouse pointer enters the ComboBox
control.

MouseHover This event occurs when the mouse pointer rests on the ComboBox
control.

SelectedIndexChanged This event occurs when the SelectedIndex property has changed.

You might also like