Export (0) Print
Expand All
This topic has not yet been rated - Rate this topic

HtmlSelect Class

Allows programmatic access to the HTML <select> element on the server.

Namespace:  System.Web.UI.HtmlControls
Assembly:  System.Web (in System.Web.dll)
[ValidationPropertyAttribute("Value")]
public class HtmlSelect : HtmlContainerControl, IPostBackDataHandler, 
	IParserAccessor
<asp:HtmlSelect />

The HtmlSelect type exposes the following members.

  NameDescription
Public methodHtmlSelectInitializes a new instance of the HtmlSelect class.
Top
  NameDescription
Protected propertyAdapterGets the browser-specific adapter for the control. (Inherited from Control.)
Public propertyAppRelativeTemplateSourceDirectoryGets or sets the application-relative virtual directory of the Page or UserControl object that contains this control. (Inherited from Control.)
Public propertyAttributesGets a collection of all attribute name and value pairs expressed on a server control tag within the ASP.NET page. (Inherited from HtmlControl.)
Public propertyBindingContainerInfrastructure. Gets the control that contains this control's data binding. (Inherited from Control.)
Protected propertyChildControlsCreatedGets a value that indicates whether the server control's child controls have been created. (Inherited from Control.)
Public propertyClientIDGets the control ID for HTML markup that is generated by ASP.NET. (Inherited from Control.)
Public propertyClientIDModeGets or sets the algorithm that is used to generate the value of the ClientID property. (Inherited from Control.)
Protected propertyClientIDSeparatorGets a character value representing the separator character used in the ClientID property. (Inherited from Control.)
Protected propertyContextGets the HttpContext object associated with the server control for the current Web request. (Inherited from Control.)
Public propertyControlsGets a ControlCollection object that represents the child controls for a specified server control in the UI hierarchy. (Inherited from Control.)
Public propertyDataItemContainerGets a reference to the naming container if the naming container implements IDataItemContainer. (Inherited from Control.)
Public propertyDataKeysContainerGets a reference to the naming container if the naming container implements IDataKeysControl. (Inherited from Control.)
Public propertyDataMemberGets or sets the set of data to bind to the HtmlSelect control from a DataSource property with multiple sets of data.
Public propertyDataSourceGets or sets the source of information to bind to the HtmlSelect control.
Public propertyDataSourceIDGets or sets the ID property of the data source control that the HtmlSelect control should use to retrieve its data source.
Public propertyDataTextFieldGets or sets the field from the data source to bind to the ListItem.Text property of each item in the HtmlSelect control.
Public propertyDataValueFieldGets or sets the field from the data source to bind to the ListItem.Value property of each item in the HtmlSelect control.
Protected propertyDesignModeGets a value indicating whether a control is being used on a design surface. (Inherited from Control.)
Public propertyDisabledGets or sets a value indicating whether the HTML server control is disabled. (Inherited from HtmlControl.)
Public propertyEnableThemingGets or sets a value indicating whether themes apply to this control. (Inherited from Control.)
Public propertyEnableViewStateGets or sets a value indicating whether the server control persists its view state, and the view state of any child controls it contains, to the requesting client. (Inherited from Control.)
Protected propertyEventsGets a list of event handler delegates for the control. This property is read-only. (Inherited from Control.)
Protected propertyHasChildViewStateGets a value indicating whether the current server control's child controls have any saved view-state settings. (Inherited from Control.)
Public propertyIDGets or sets the programmatic identifier assigned to the server control. (Inherited from Control.)
Protected propertyIdSeparatorInfrastructure. Gets the character used to separate control identifiers. (Inherited from Control.)
Public propertyInnerHtmlGets or sets the content between the opening and closing tags of the control without automatically converting special characters to their equivalent HTML entities. This property is not supported for this control. (Overrides HtmlContainerControl.InnerHtml.)
Public propertyInnerTextGets or sets the content between the opening and closing tags of the control with automatic conversion of special characters to their equivalent HTML entities. This property is not supported for this control. (Overrides HtmlContainerControl.InnerText.)
Protected propertyIsBoundUsingDataSourceIDGets a value indicating whether a DataSourceID property is defined for the HtmlSelect control.
Protected propertyIsChildControlStateClearedGets a value indicating whether controls contained within this control have control state. (Inherited from Control.)
Protected propertyIsTrackingViewStateGets a value that indicates whether the server control is saving changes to its view state. (Inherited from Control.)
Protected propertyIsViewStateEnabledGets a value indicating whether view state is enabled for this control. (Inherited from Control.)
Public propertyItemsGets a collection that contains the items listed in an HtmlSelect control.
Protected propertyLoadViewStateByIDGets a value indicating whether the control participates in loading its view state by ID instead of index. (Inherited from Control.)
Public propertyMultipleGets or sets a value indicating whether multiple items can be selected concurrently in the HtmlSelect control.
Public propertyNameGets or sets the unique identifier name associated with the HtmlSelect control.
Public propertyNamingContainerGets a reference to the server control's naming container, which creates a unique namespace for differentiating between server controls with the same Control.ID property value. (Inherited from Control.)
Public propertyPageGets a reference to the Page instance that contains the server control. (Inherited from Control.)
Public propertyParentGets a reference to the server control's parent control in the page control hierarchy. (Inherited from Control.)
Public propertyRenderingCompatibilityGets a value that specifies the ASP.NET version that rendered HTML will be compatible with. (Inherited from Control.)
Protected propertyRequiresDataBindingGets or sets a value indicating whether the HtmlSelect control needs to bind to its specified data source.
Public propertySelectedIndexGets or sets the ordinal index of the selected item in an HtmlSelect control.
Protected propertySelectedIndicesGets a collection that contains the zero-based indexes of all currently selected items in the HtmlSelect control.
Public propertySiteGets information about the container that hosts the current control when rendered on a design surface. (Inherited from Control.)
Public propertySizeGets or sets the height (in rows) of the HtmlSelect control.
Public propertySkinIDGets or sets the skin to apply to the control. (Inherited from Control.)
Public propertyStyleGets a collection of all cascading style sheet (CSS) properties applied to a specified HTML server control in the ASP.NET file. (Inherited from HtmlControl.)
Public propertyTagNameGets the element name of a tag that contains a runat=server attribute and value pair. (Inherited from HtmlControl.)
Public propertyTemplateControlGets or sets a reference to the template that contains this control. (Inherited from Control.)
Public propertyTemplateSourceDirectoryGets the virtual directory of the Page or UserControl that contains the current server control. (Inherited from Control.)
Public propertyUniqueIDGets the unique, hierarchically qualified identifier for the server control. (Inherited from Control.)
Public propertyValidateRequestModeGets or sets a value that indicates whether the control checks client input from the browser for potentially dangerous values. (Inherited from Control.)
Public propertyValueGets the value of the selected item in the HtmlSelect control or sets the SelectedIndex property of the control to the index of the first item in the list with the specified value.
Protected propertyViewStateGets a dictionary of state information that allows you to save and restore the view state of a server control across multiple requests for the same page. (Inherited from Control.)
Protected propertyViewStateIgnoresCaseGets a value that indicates whether the HtmlControl view state is case-sensitive. (Inherited from HtmlControl.)
Public propertyViewStateModeGets or sets the view-state mode of this control. (Inherited from Control.)
Public propertyVisibleGets or sets a value that indicates whether a server control is rendered as UI on the page. (Inherited from Control.)
Top
  NameDescription
Protected methodAddedControlCalled after a child control is added to the Controls collection of the Control object. (Inherited from Control.)
Protected methodAddParsedSubObjectAdds a parsed child control to the HtmlSelect control. (Overrides Control.AddParsedSubObject(Object).)
Public methodApplyStyleSheetSkinApplies the style properties defined in the page style sheet to the control. (Inherited from Control.)
Protected methodBeginRenderTracingBegins design-time tracing of rendering data. (Inherited from Control.)
Protected methodBuildProfileTreeInfrastructure. Gathers information about the server control and delivers it to the Trace property to be displayed when tracing is enabled for the page. (Inherited from Control.)
Protected methodClearCachedClientIDInfrastructure. Sets the cached ClientID value to null. (Inherited from Control.)
Protected methodClearChildControlStateDeletes the control-state information for the server control's child controls. (Inherited from Control.)
Protected methodClearChildStateDeletes the view-state and control-state information for all the server control's child controls. (Inherited from Control.)
Protected methodClearChildViewStateDeletes the view-state information for all the server control's child controls. (Inherited from Control.)
Protected methodClearEffectiveClientIDModeInfrastructure. Sets the ClientIDMode property of the current control instance and of any child controls to Inherit. (Inherited from Control.)
Protected methodClearSelectionClears the list selection of the HtmlSelect control and sets the ListItem.Selected property of all items to false.
Protected methodCreateChildControlsCalled by the ASP.NET page framework to notify server controls that use composition-based implementation to create any child controls they contain in preparation for posting back or rendering. (Inherited from Control.)
Protected methodCreateControlCollectionCreates an EmptyControlCollection object for the HtmlSelect control. (Overrides HtmlContainerControl.CreateControlCollection().)
Public methodDataBind()Binds a data source to the invoked server control and all its child controls. (Inherited from Control.)
Protected methodDataBind(Boolean)Binds a data source to the invoked server control and all its child controls with an option to raise the DataBinding event. (Inherited from Control.)
Protected methodDataBindChildrenBinds a data source to the server control's child controls. (Inherited from Control.)
Public methodDisposeEnables a server control to perform final clean up before it is released from memory. (Inherited from Control.)
Protected methodEndRenderTracingEnds design-time tracing of rendering data. (Inherited from Control.)
Protected methodEnsureChildControlsDetermines whether the server control contains child controls. If it does not, it creates child controls. (Inherited from Control.)
Protected methodEnsureDataBoundVerifies that the HtmlSelect control requires data binding and that a valid data source control is specified before calling the DataBind method.
Protected methodEnsureIDCreates an identifier for controls that do not have an identifier assigned. (Inherited from Control.)
Public methodEquals(Object)Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected methodFinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public methodFindControl(String)Searches the current naming container for a server control with the specified id parameter. (Inherited from Control.)
Protected methodFindControl(String, Int32)Infrastructure. Searches the current naming container for a server control with the specified id and an integer, specified in the pathOffset parameter, which aids in the search. You should not override this version of the FindControl method. (Inherited from Control.)
Public methodFocusSets input focus to a control. (Inherited from Control.)
Protected methodGetAttributeGets the value of the named attribute on the HtmlControl control. (Inherited from HtmlControl.)
Protected methodGetDataGets an IEnumerable object that represents the data source that is bound to the HtmlSelect control.
Protected methodGetDesignModeStateInfrastructure. Gets design-time data for a control. (Inherited from Control.)
Public methodGetHashCodeServes as the default hash function. (Inherited from Object.)
Public methodGetRouteUrl(Object)Gets the URL that corresponds to a set of route parameters. (Inherited from Control.)
Public methodGetRouteUrl(RouteValueDictionary)Gets the URL that corresponds to a set of route parameters. (Inherited from Control.)
Public methodGetRouteUrl(String, Object)Gets the URL that corresponds to a set of route parameters and a route name. (Inherited from Control.)
Public methodGetRouteUrl(String, RouteValueDictionary)Gets the URL that corresponds to a set of route parameters and a route name. (Inherited from Control.)
Public methodGetTypeGets the Type of the current instance. (Inherited from Object.)
Public methodGetUniqueIDRelativeToReturns the prefixed portion of the UniqueID property of the specified control. (Inherited from Control.)
Public methodHasControlsDetermines if the server control contains any child controls. (Inherited from Control.)
Protected methodHasEventsReturns a value indicating whether events are registered for the control or any child controls. (Inherited from Control.)
Protected methodIsLiteralContentInfrastructure. Determines if the server control holds only literal content. (Inherited from Control.)
Protected methodLoadControlStateRestores control-state information from a previous page request that was saved by the SaveControlState method. (Inherited from Control.)
Protected methodLoadPostDataProcesses the postback data for the HtmlSelect control.
Protected methodLoadViewStateRestores the HtmlSelect control's view state information from a previous page request that was saved by the SaveViewState method. (Overrides HtmlContainerControl.LoadViewState(Object).)
Protected methodMapPathSecureRetrieves the physical path that a virtual path, either absolute or relative, maps to. (Inherited from Control.)
Protected methodMemberwiseCloneCreates a shallow copy of the current Object. (Inherited from Object.)
Protected methodOnBubbleEventDetermines whether the event for the server control is passed up the page's UI server control hierarchy. (Inherited from Control.)
Protected methodOnDataBindingRaises the DataBinding event of an HtmlSelect control. (Overrides Control.OnDataBinding(EventArgs).)
Protected methodOnDataPropertyChangedInvoked when the DataSource, DataMember, or DataSourceID property is changed.
Protected methodOnDataSourceViewChangedInvoked when the DataSource, DataMember, or DataSourceID property is changed.
Protected methodOnInitRaises the Init event for the HtmlSelect control. (Overrides Control.OnInit(EventArgs).)
Protected methodOnLoadRaises the Load event for the HtmlSelect control. (Overrides Control.OnLoad(EventArgs).)
Protected methodOnPreRenderRaises the PreRender event for the HtmlSelect control. (Overrides Control.OnPreRender(EventArgs).)
Protected methodOnServerChangeRaises the ServerChange event of the HtmlSelect control. This allows you to provide a custom handler for the event.
Protected methodOnUnloadRaises the Unload event. (Inherited from Control.)
Protected methodOpenFileGets a Stream used to read a file. (Inherited from Control.)
Protected methodRaiseBubbleEventAssigns any sources of the event and its information to the control's parent. (Inherited from Control.)
Protected methodRaisePostDataChangedEventCalls the OnServerChange method to signal the HtmlSelect control that the state of the control has changed.
Protected methodRemovedControlCalled after a child control is removed from the Controls collection of the Control object. (Inherited from Control.)
Protected methodRenderRenders the HtmlContainerControl control to the specified HtmlTextWriter object. (Inherited from HtmlContainerControl.)
Protected methodRenderAttributesRenders the HtmlSelect control's attributes to the specified HtmlTextWriter object. (Overrides HtmlContainerControl.RenderAttributes(HtmlTextWriter).)
Protected methodRenderBeginTagRenders the opening HTML tag of the control into the specified HtmlTextWriter object. (Inherited from HtmlControl.)
Protected methodRenderChildrenRenders the HtmlSelect control's child controls to the specified HtmlTextWriter object. (Overrides Control.RenderChildren(HtmlTextWriter).)
Public methodRenderControl(HtmlTextWriter)Outputs server control content to a provided HtmlTextWriter object and stores tracing information about the control if tracing is enabled. (Inherited from Control.)
Protected methodRenderControl(HtmlTextWriter, ControlAdapter)Outputs server control content to a provided HtmlTextWriter object using a provided ControlAdapter object. (Inherited from Control.)
Protected methodRenderEndTagRenders the closing tag for the HtmlContainerControl control to the specified HtmlTextWriter object. (Inherited from HtmlContainerControl.)
Protected methodResolveAdapterGets the control adapter responsible for rendering the specified control. (Inherited from Control.)
Public methodResolveClientUrlGets a URL that can be used by the browser. (Inherited from Control.)
Public methodResolveUrlConverts a URL into one that is usable on the requesting client. (Inherited from Control.)
Protected methodSaveControlStateSaves any server control state changes that have occurred since the time the page was posted back to the server. (Inherited from Control.)
Protected methodSaveViewStateSaves any HtmlSelect control view state changes that have occurred since the page was posted back to the server. (Overrides Control.SaveViewState().)
Protected methodSelectSelects multiple items of the HtmlSelect control's Items collection.
Protected methodSetAttributeSets the value of the named attribute on the HtmlControl control. (Inherited from HtmlControl.)
Protected methodSetDesignModeStateSets design-time data for a control. (Inherited from Control.)
Public methodSetRenderMethodDelegateInfrastructure. Assigns an event handler delegate to render the server control and its content into its parent control. (Inherited from Control.)
Public methodSetTraceData(Object, Object)Sets trace data for design-time tracing of rendering data, using the trace data key and the trace data value. (Inherited from Control.)
Public methodSetTraceData(Object, Object, Object)Sets trace data for design-time tracing of rendering data, using the traced object, the trace data key, and the trace data value. (Inherited from Control.)
Public methodToStringReturns a string that represents the current object. (Inherited from Object.)
Protected methodTrackViewStateTracks view state changes to the HtmlSelect control so the changes can be stored in the control's StateBag object. This object is accessible through the Control.ViewState property. (Overrides Control.TrackViewState().)
Top
  NameDescription
Public eventDataBindingOccurs when the server control binds to a data source. (Inherited from Control.)
Public eventDisposedOccurs when a server control is released from memory, which is the last stage of the server control lifecycle when an ASP.NET page is requested. (Inherited from Control.)
Public eventInitOccurs when the server control is initialized, which is the first step in its lifecycle. (Inherited from Control.)
Public eventLoadOccurs when the server control is loaded into the Page object. (Inherited from Control.)
Public eventPreRenderOccurs after the Control object is loaded but prior to rendering. (Inherited from Control.)
Public eventServerChangeOccurs when the selected items in the HtmlSelect control change between posts to the server.
Public eventUnloadOccurs when the server control is unloaded from memory. (Inherited from Control.)
Top
  NameDescription
Public Extension MethodFindDataSourceControlReturns the data source that is associated with the data control for the specified control. (Defined by DynamicDataExtensions.)
Public Extension MethodFindFieldTemplateReturns the field template for the specified column in the specified control's naming container. (Defined by DynamicDataExtensions.)
Public Extension MethodFindMetaTableReturns the metatable object for the containing data control. (Defined by DynamicDataExtensions.)
Top
  NameDescription
Explicit interface implemetationPrivate methodIAttributeAccessor.GetAttributeInfrastructure. For a description of this member, see IAttributeAccessor.GetAttribute. (Inherited from HtmlControl.)
Explicit interface implemetationPrivate methodIAttributeAccessor.SetAttributeInfrastructure. For a description of this member, see IAttributeAccessor.SetAttribute. (Inherited from HtmlControl.)
Explicit interface implemetationPrivate propertyIControlBuilderAccessor.ControlBuilderFor a description of this member, see IControlBuilderAccessor.ControlBuilder. (Inherited from Control.)
Explicit interface implemetationPrivate methodIControlDesignerAccessor.GetDesignModeStateFor a description of this member, see IControlDesignerAccessor.GetDesignModeState. (Inherited from Control.)
Explicit interface implemetationPrivate methodIControlDesignerAccessor.SetDesignModeStateFor a description of this member, see IControlDesignerAccessor.SetDesignModeState. (Inherited from Control.)
Explicit interface implemetationPrivate methodIControlDesignerAccessor.SetOwnerControlInfrastructure. For a description of this member, see IControlDesignerAccessor.SetOwnerControl. (Inherited from Control.)
Explicit interface implemetationPrivate propertyIControlDesignerAccessor.UserDataFor a description of this member, see IControlDesignerAccessor.UserData. (Inherited from Control.)
Explicit interface implemetationPrivate propertyIDataBindingsAccessor.DataBindingsFor a description of this member, see IDataBindingsAccessor.DataBindings. (Inherited from Control.)
Explicit interface implemetationPrivate propertyIDataBindingsAccessor.HasDataBindingsFor a description of this member, see IDataBindingsAccessor.HasDataBindings. (Inherited from Control.)
Explicit interface implemetationPrivate propertyIExpressionsAccessor.ExpressionsFor a description of this member, see IExpressionsAccessor.Expressions. (Inherited from Control.)
Explicit interface implemetationPrivate propertyIExpressionsAccessor.HasExpressionsFor a description of this member, see IExpressionsAccessor.HasExpressions. (Inherited from Control.)
Explicit interface implemetationPrivate methodIParserAccessor.AddParsedSubObjectFor a description of this member, see IParserAccessor.AddParsedSubObject. (Inherited from Control.)
Explicit interface implemetationPrivate methodIPostBackDataHandler.LoadPostDataFor a description of this member, see IPostBackDataHandler.LoadPostData.
Explicit interface implemetationPrivate methodIPostBackDataHandler.RaisePostDataChangedEventFor a description of this member, see IPostBackDataHandler.RaisePostDataChangedEvent.
Top

Use the HtmlSelect control to create a selection box. Specify item listings in the control by placing HTML <option> elements between the opening and closing <select> tags. Each item is represented by a System.Web.UI.WebControls.ListItem object. To specify the text that is displayed for each item in the control, you can set the ListItem.Text property of the item, or simply place text between the opening and closing <option> tags. By setting the ListItem.Value property of the item, you can associate a value with the item that is different from the text. To select an item from the list by default, set the ListItem.Selected property of the item to true.

You can control the appearance and behavior of the HtmlSelect control by setting the Size and Multiple properties. The Size property specifies the height (in rows) of the control. The Multiple property specifies whether more than one item can be concurrently selected in the HtmlSelect control.

By default, the HtmlSelect control is displayed as a drop-down list box. If you allow multiple selections (by setting the Multiple property to true) or specify a height greater than one row (by setting the Size property to a value greater than 1), the control is displayed as a list box.

To determine the selected item in a single-selection HtmlSelect control, use the SelectedIndex property to get the index of the selected item. You can then use this value to retrieve the item from the Items collection.

To determine the selected items from an HtmlSelect control that allows multiple selections, iterate through the Items collection and test the ListItem.Selected property of each item.

The HtmlSelect class provides two properties to support data binding. To bind data to any object that implements the System.Collections.IEnumerable interface (such as System.Data.DataView, System.Collections.ArrayList, and System.Collections.Generic.List<T>), or the IListSource interface, use the DataSource property to specify the data source to bind to. When you set the DataSource property, you must manually write the code to perform the data binding. To automatically bind an HtmlSelect control to a data source represented by a data source control, use the DataSourceID property and set its value to the ID property of the data source control to use. When you set the DataSourceID property, the HtmlSelect control automatically binds to the specified data source control. Therefore, you do not need to explicitly call the DataBind method.

You can also specify which fields in the data source bind to the ListItem.Text and ListItem.Value properties of an item in the control by setting the DataTextField and DataValueField properties, respectively. If the data source contains multiple sources of data, use the DataMember property to specify the specific source to bind to the control. For example, if you have a System.Data.DataSet object with multiple tables, you must specify which table to bind to the control with the DataMember property.

For a list of initial property values for an instance of HtmlSelect, see the HtmlSelect constructor.

The following code example demonstrates how to create an HtmlSelect control by explicitly declaring the items that appear in the control.


<%@ Page Language="C#" AutoEventWireup="True" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">

    void Button_Click (Object sender, EventArgs e)
    {

        Label1.Text = "You selected:";

        for (int i = 0; i <= Select1.Items.Count - 1; i++)
        {
           if (Select1.Items[i].Selected)
              Label1.Text += "<br /> &nbsp;&nbsp; -" + Select1.Items[i].Text;
        }

    }

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >

<head>
    <title> HtmlSelect Example </title>
</head>
<body>
<form id="form1" runat="server">

    <h3> HtmlSelect Example </h3>

    Select items from the list: <br /><br />

    <select id="Select1" 
            multiple="true"
            runat="server">

        <option value="1" selected="selected"> Item 1 </option>
        <option value="2"> Item 2 </option>
        <option value="3"> Item 3 </option>
        <option value="4"> Item 4 </option>
        <option value="5"> Item 5 </option>
        <option value="6"> Item 6 </option>

    </select>
    <br /><br />

    <button id="Button1"
            onserverclick="Button_Click"
            runat="server">

        Submit

    </button>
    <br /><br />

    <asp:Label id="Label1"
         runat="server"/>

   </form>
</body>
</html>

The following code example demonstrates how to create an HtmlSelect control by binding the control to a data source.

<%@ Page Language="C#" AutoEventWireup="True" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >

<head>
    <title> HtmlSelect Example </title>
<script runat="server">

      void Page_Load (Object sender, EventArgs e)
      {

        // Bind the HtmlSelect control to a data source when the page is initially loaded.
        if (!IsPostBack)
        {

           // Open a connection to the database and run the query.
           // Note that the connection string may vary depending on your
           // database server settings. 
           string ConnectString = "server=localhost;database=pubs;integrated security=SSPI";
           string QueryString = "select * from authors";

           SqlConnection myConnection = new SqlConnection(ConnectString);
           SqlDataAdapter myCommand = new SqlDataAdapter(QueryString, myConnection);

           // Create a dataset to store the query results.
           DataSet ds = new DataSet();
           myCommand.Fill(ds, "Authors");

           // Bind the HtmlSelect control to the data source.
           Select1.DataSource = ds;
           Select1.DataTextField = "au_fname";
           Select1.DataValueField = "au_fname";
           Select1.DataBind();
        }

      }

      void Button_Click (Object sender, EventArgs e)
      {

         // Display the selected items. 
         Label1.Text = "You selected:";

         for (int i=0; i<=Select1.Items.Count - 1; i++)
         {
            if (Select1.Items[i].Selected)
               Label1.Text += "<br /> &nbsp;&nbsp; - " + Select1.Items[i].Text;
         }

      }

   </script>

</head>

<body>

   <form id="form1" runat="server">

      <h3> HtmlSelect Example </h3>

      Select items from the list. <br />
      Use the Control or Shift key to select multiple items. <br /><br />

      <select id="Select1"
              multiple="true" 
              runat="server"/>

      <br /><br />

      <button id="Button1"
              onserverclick="Button_Click"
              runat="server">

         Submit

      </button>

      <br /><br />

      <asp:Label id="Label1"
           runat="server"/>

   </form>

</body>

</html>

The following code example demonstrates how to use the DataSourceID property to specify the data source for an HtmlSelect control. The DataSourceID property is set to the ID property of the SqlDataSource control used to retrieve the data. When the page is loaded, the HtmlSelect control automatically binds to the data source specified by the SqlDataSource control and the data is displayed to the user.

<%@ page language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
    <title>HtmlSelect.DataSourceID</title>
</head>
<body>
<form id="Form1" runat="server">
  <div>

    <h3> HtmlSelect.DataSourceID Example </h3>

    <p>Select an item from the list</p>

    <select id="Select1"
      name="Select1"
      datasourceid="SqlDataSource1"
      datatextfield="ProductName"
      runat="server">
    </select>

    <asp:sqldatasource id="SqlDataSource1"          
      connectionstring="workstation id=localhost;integrated security=SSPI;initial catalog=Northwind"
      selectcommand="SELECT * FROM [Products] Where ProductID <= 5"
      runat="server">
    </asp:sqldatasource>

  </div>
</form>
</body>
</html>

.NET Framework

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

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

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

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Did you find this helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2014 Microsoft. All rights reserved.