This documentation is archived and is not being maintained.

HtmlSelect.Name Property

Gets or sets the unique identifier name associated with the HtmlSelect control.

[Visual Basic]
Public Property Name As String
[C#]
public string Name {get; set;}
[C++]
public: __property String* get_Name();
public: __property void set_Name(String*);
[JScript]
public function get Name() : String;
public function set Name(String);

Property Value

The unique identifier name associated with the HtmlSelect control.

Remarks

Use the Name property to determine the unique identifier name for an HtmlSelect control. In this implementation, the get accessor returns the value of the Control.UniqueID property. However, the set accessor does not assign a value to this property.

Note   The set accessor does not assign a value to this property because the Name property must have the same value as the Control.UniqueID property for most controls to work properly.

Example

[Visual Basic] 
<%@ Page Language="VB" AutoEventWireup="True" %>
<%@ Import Namespace="System.Data" %>

<html>
   <script runat="server" >
  
      Sub Page_Load(sender as Object, e As EventArgs)

         ' Bind a data source to the Repeater control. 
         Repeater1.DataSource = CreateRepeaterSource()
         Repeater1.DataBind()

      End Sub

      Sub Item_Bound(sender As Object, e As RepeaterItemEventArgs)

         ' Each item in the Repeater control contains an HtmlSelect 
         ' control. This method binds a data source to the HtmlSelect
         ' control as each item in the Repeater control is being
         ' bound to data.
 
         ' The ItemDataBound event is raised when data is bound to an
         ' item in the Repeater control. Items can include the Header,
         ' Footer, and so on. Use the following logic only if the item 
         ' being bound is an Item or AlternatingItem.
         If (e.Item.ItemType = ListItemType.Item) Or _
            (e.Item.ItemType = ListItemType.AlternatingItem) Then

            ' Bind a data source to the HtmlSelect control.
            Dim selectControl As HtmlSelect = _
                CType(e.Item.FindControl("Select1"), HtmlSelect)
            selectControl.DataSource = CreateHtmlSelectSource()
            selectControl.DataBind()

            ' The runtime automatically generates a unique identifier 
            ' for each control embedded in a list control, such as the 
            ' Repeater. The Name property of the HtmlSelect control 
            ' contains this unique identifier and is commonly used 
            ' to identify a specific control.

            ' Select the last item in the HtmlSelect control if the Name 
            ' property contains the value "Repeater1:_ctl3:Select1".
            If selectControl.Name = "Repeater1:_ctl3:Select1" Then 

               selectControl.SelectedIndex = selectControl.Items.Count - 1

            End If

         End If

      End Sub

      Function CreateHtmlSelectSource() As DataView 

         ' Create a DataTable that contains sample data for the 
         ' HtmlSelect controls.
         Dim dt As DataTable = New DataTable()
         Dim dr As DataRow
 
         dt.Columns.Add(New DataColumn("Text", GetType(String)))
         dt.Columns.Add(New DataColumn("Value", GetType(String)))
 
         ' Populate the DataTable with sample values.
         Dim i As Integer
         
         For i = 0 To 4 
     
            dr = dt.NewRow()
 
            dr(0) = "Item " & i.ToString()
            dr(1) = i.ToString()
 
            dt.Rows.Add(dr)
         
         Next i
 
         ' Create a DataView from the DataTable.
         Dim dv As DataView = New DataView(dt)
         Return dv

      End Function

      Function CreateRepeaterSource() As DataView 

         ' Create a DataTable that contains sample data for the 
         ' Repeater control.
         Dim dt As DataTable = New DataTable()
         Dim dr As DataRow
 
         dt.Columns.Add(new DataColumn("Category", GetType(String)))
 
         ' Populate the DataTable with sample values.
         Dim i As Integer

         For i = 0 To 4  

            dr = dt.NewRow()
 
            dr(0) = "Category " & i.ToString()

            dt.Rows.Add(dr)

         Next i
 
         ' Create a DataView from the DataTable.
         Dim dv As DataView = new DataView(dt)
         return dv

      End Function
  
   </script>
  
<body>

   <form runat="server">
  
      <h3> HtmlSelect Name Example </h3>

      Notice that Category 3 has a different item selected by default. <br> 
  
      <asp:Repeater id="Repeater1"
           OnItemDataBound="Item_Bound"
           runat="server">

         <ItemTemplate>

            <h4><%# DataBinder.Eval(Container.DataItem, "Category") %></h4>

            Select Item:

            <br>

            <select id="Select1"
                    DataTextField="Text"
                    DataValueField="Value"
                    runat="server"/> 

            <br><br>

            <hr>

         </ItemTemplate>

      </asp:Repeater>
  
   </form>

</body>
</html>
 

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

<html>
   <script runat="server" >
  
      void Page_Load(Object sender, EventArgs e)
      {

         // Bind a data source to the Repeater control. 
         Repeater1.DataSource = CreateRepeaterSource();
         Repeater1.DataBind();

      }

      void Item_Bound(Object sender, RepeaterItemEventArgs e)
      {

         // Each item in the Repeater control contains an HtmlSelect 
         // control. This method binds a data source to the HtmlSelect
         // control as each item in the Repeater control is being
         // bound to data.
 
         // The ItemDataBound event is raised when data is bound to an 
         // item in the Repeater control. Items can include the Header, 
         // Footer, and so on. Use the following logic only if the item 
         // being bound is an Item or AlternatingItem.
         if (e.Item.ItemType == ListItemType.Item || 
             e.Item.ItemType == ListItemType.AlternatingItem)
         {

            // Bind a data source to the HtmlSelect control.
            HtmlSelect selectControl = 
                (HtmlSelect)e.Item.FindControl("Select1");
            selectControl.DataSource = CreateHtmlSelectSource();
            selectControl.DataBind();

            // The runtime automatically generates a unique identifier 
            // for each control embedded in a list control, such as the 
            // Repeater. The Name property of the HtmlSelect control 
            // contains this unique identifier and is commonly used 
            // to identify a specific control.
           

            // Select the last item in the HtmlSelect control if the Name
            // property contains the value "Repeater1:_ctl3:Select1".
            if(selectControl.Name == "Repeater1:_ctl3:Select1") 
            {

               selectControl.SelectedIndex = selectControl.Items.Count - 1;

            }

         }

      }

      DataView CreateHtmlSelectSource()
      {

         // Create a DataTable that contains sample data for the 
         // HtmlSelect controls.
         DataTable dt = new DataTable();
         DataRow dr;
 
         dt.Columns.Add(new DataColumn("Text", typeof(String)));
         dt.Columns.Add(new DataColumn("Value", typeof(String)));
 
         // Populate the DataTable with sample values.
         for (int i = 0; i < 5; i++) 
         {
            dr = dt.NewRow();
 
            dr[0] = "Item " + i.ToString();
            dr[1] = i.ToString();
 
            dt.Rows.Add(dr);
         }
 
         // Create a DataView from the DataTable.
         DataView dv = new DataView(dt);
         return dv;

      }

      DataView CreateRepeaterSource()
      {

         // Create a DataTable that contains sample data for the 
         // Repeater control.
         DataTable dt = new DataTable();
         DataRow dr;
 
         dt.Columns.Add(new DataColumn("Category", typeof(String)));
 
         // Populate the DataTable with sample values.
         for (int i = 0; i < 5; i++) 
         {
            dr = dt.NewRow();
 
            dr[0] = "Category " + i.ToString();

            dt.Rows.Add(dr);
         }
 
         // Create a DataView from the DataTable.
         DataView dv = new DataView(dt);
         return dv;

      }
  
   </script>
  
<body>

   <form runat="server">
  
      <h3> HtmlSelect Name Example </h3>

      Notice that Category 3 has a different item selected by default. <br> 
  
      <asp:Repeater id="Repeater1"
           OnItemDataBound="Item_Bound"
           runat="server">

         <ItemTemplate>

            <h4><%# DataBinder.Eval(Container.DataItem, "Category") %></h4>

            Select Item:

            <br>

            <select id="Select1"
                    DataTextField="Text"
                    DataValueField="Value"
                    runat="server"/> 

            <br><br>

            <hr>

         </ItemTemplate>

      </asp:Repeater>
  
   </form>

</body>
</html>
 

[C++, JScript] No example is available for C++ or JScript. To view a Visual Basic or C# example, click the Language Filter button Language Filter in the upper-left corner of the page.

Requirements

Platforms: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family

See Also

HtmlSelect Class | HtmlSelect Members | System.Web.UI.HtmlControls Namespace | Control.UniqueID

Show: