ListItem Class
Represents a data item in a data-bound list control. This class cannot be inherited.
Assembly: System.Web (in System.Web.dll)
The ListItem type exposes the following members.
| Name | Description | |
|---|---|---|
![]() | ListItem() | Initializes a new instance of the ListItem class. |
![]() | ListItem(String) | Initializes a new instance of the ListItem class with the specified text data. |
![]() | ListItem(String, String) | Initializes a new instance of the ListItem class with the specified text and value data. |
![]() | ListItem(String, String, Boolean) | Initializes a new instance of the ListItem class with the specified text, value, and enabled data. |
| Name | Description | |
|---|---|---|
![]() | Attributes | Gets a collection of attribute name and value pairs for the ListItem that are not directly supported by the class. |
![]() | Enabled | Gets or sets a value indicating whether the list item is enabled. |
![]() | Selected | Gets or sets a value indicating whether the item is selected. |
![]() | Text | Gets or sets the text displayed in a list control for the item represented by the ListItem. |
![]() | Value | Gets or sets the value associated with the ListItem. |
| Name | Description | |
|---|---|---|
![]() | Equals | Determines whether the specified object has the same value and text as the current list item. (Overrides Object::Equals(Object).) |
![]() | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.) |
![]() ![]() | FromString | Creates a ListItem from the specified text. |
![]() | GetHashCode | Serves as a hash function for a particular type, and is suitable for use in hashing algorithms and data structures like a hash table. (Overrides Object::GetHashCode().) |
![]() | GetType | Gets the Type of the current instance. (Inherited from Object.) |
![]() | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) |
![]() | ToString | Returns a string that represents the current object. (Overrides Object::ToString().) |
| Name | Description | |
|---|---|---|
![]() ![]() | IAttributeAccessor::GetAttribute | Infrastructure. Returns the attribute value of the list item control having the specified attribute name. |
![]() ![]() | IAttributeAccessor::SetAttribute | Infrastructure. Sets an attribute of the list item control with the specified name and value. |
![]() ![]() | IParserAccessor::AddParsedSubObject | Infrastructure. Allows the Text property to be persisted as inner content. |
![]() ![]() | IStateManager::IsTrackingViewState | Infrastructure. For a description of this member, see IStateManager::IsTrackingViewState. |
![]() ![]() | IStateManager::LoadViewState | Infrastructure. For a description of this member, see IStateManager::LoadViewState. |
![]() ![]() | IStateManager::SaveViewState | Infrastructure. For a description of this member, see IStateManager::SaveViewState. |
![]() ![]() | IStateManager::TrackViewState | Infrastructure. For a description of this member, see IStateManager::TrackViewState. |
A ListItem control represents an individual data item within a data-bound list control, such as a ListBox or a RadioButtonList control.
There are several ways to specify the text displayed for an item in the list control. The most common method is by placing text in the inner HTML content. The inner HTML content is the text between the opening and closing tags of the ListItem control. You can also use the Text property to specify the text displayed in the list control for the item.
The Value property allows you to associate a value with the item in the list control, in addition to the text displayed in the control. For example, you can display text for an item in the list control, such as "Item 1", and use the Value property to specify a value for that item, such as "$1.99".
You can have any combination of the inner HTML content, Text, or Value properties set. The resulting HTML output for the ListItem control depends on the combination of these three properties that are set. For example, if all three properties are set as follows:
<asp:ListItem Value="Value 1" Text="Item 1">Inner 1</asp:ListItem>
The inner HTML content is used for rendered inner HTML content and the Value property is used for the Value attribute. The resulting HTML rendering output is:
<option value="Value 1">Inner 1</option>
The following table lists the combination of set properties and the corresponding property used for the rendered inner HTML content and Value attribute. The three columns on the left list the combination of set properties. The two columns on the right list which property value is used for the corresponding attribute.
Inner HTML content | Text property | Value property | Rendered Inner HTML content | Rendered Value attribute |
|---|---|---|---|---|
Set | Set | Set | Inner HTML content | Value property |
Set | Set | Not set | Inner HTML content | Inner HTML content |
Set | Not set | Set | Inner HTML content | Value property |
Set | Not set | Not set | Inner HTML content | Inner HTML text |
Not set | Set | Set | Text property | Value property |
Not set | Set | Not set | Text property | Text property |
Not set | Not set | Set | Value property | Value property |
Not set | Not set | Not set | Not set | Not set |
Note |
|---|
Because the Text and Value properties each have a default value of an empty string, it is possible to have empty list items in the list control. |
When a list control is displayed, any ListItem control with its Selected property set to true appears highlighted in the control.
The ListItem control provides the Enabled property to allow you to specify whether a ListItem control is enabled or disabled. A ListItem control that is disabled is dimmed to indicate that it cannot be selected. Use this property to disable a ListItem control in either a RadioButtonList control or a CheckBoxList control.
Note |
|---|
You cannot use this property to disable a ListItem control in a DropDownList control or ListBox control. |
For a list of initial property values for an instance of ListItem, see the ListItem constructor.
Caution |
|---|
This control can be used to display user input, which might include malicious client script. Check any information that is sent from a client for executable script, SQL statements, or other code before displaying it in your application. You can use validation controls to verify user input before displaying the input text in a control. ASP.NET provides an input request validation feature to block script and HTML in user input. For more information, see Securing Standard Controls, How to: Protect Against Script Exploits in a Web Application by Applying HTML Encoding to Strings, and Validating User Input in ASP.NET Web Pages. |
| Topic | Location |
|---|---|
| How to: Determine the Selection in List Web Server Controls | Building ASP .NET Web Applications |
| How to: Set Web Server Control Properties in Collections | Building ASP .NET Web Applications |
| How to: Add Items in List Web Server Controls | Building ASP .NET Web Applications |
| How to: Determine the Selection in List Web Server Controls | Building ASP .NET Web Applications |
| How to: Set Web Server Control Properties in Collections | Building ASP .NET Web Applications |
| How to: Add Items in List Web Server Controls | Building ASP .NET Web Applications |
| How to: Add Items in List Web Server Controls (Visual Studio) | Building ASP .NET Web Applications in Visual Studio |
The following example illustrates the use of ListItem controls within a ListBox control.
Note |
|---|
The following code samples use the single-file code model and may not work correctly if copied directly into a code-behind file. Each code sample must be copied into an empty text file that has an .aspx extension. For more information on the Web Forms code model, see ASP.NET Web Page Code Model. |
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.







Note
Caution