M
Moe Sizlak
Hi There,
I am trying to return the value of a listbox control that is included as a
user control, I can return the name of the control but I can't access the
integer value of the selected item, what do I need to do in order to return
the "option value" of the control?
Moe
!--- returned value of the control
_ctl1_lstCategorie
!-- compiled page code
<select name="_ctl1:lstCategorie" size="1"
onchange="__doPostBack('_ctl1$lstCategorie','')" language="javascript"
id="_ctl1_lstCategorie">
<option value="0">-- Choose a Category --</option>
<option value="6">...Control Valves
....</option>
<option value="10">...Dripline
....</option>
</select>
!--- page code
<%@ Control Language="vb" EnableViewState="true" %>
<% @Import Namespace="System.Data" %>
<% @Import Namespace="System.Data.SqlClient" %>
Public Sub Page_Load(sender as Object, e as EventArgs)
Public ReadOnly Property SelectedCategoriesID As String
Get
return lstCategorie.ClientID
End Get
End Property
If Not Page.IsPostBack Then
BindStates()
LoadCategories()
response.write (lstCategorie.ClientID)
end if
End Sub
Public Sub LoadCategories()
Try
Dim myConnection as New
SqlConnection(ConfigurationSettings.AppSettings("connectionString"))
Const strSQL as String = "SELECT CategoryID, '...' + CategoryDesc + '...'
AS CategoryDesc " & _
"FROM tblProductCategories ORDER BY CategoryDesc"
Dim myCommand as New SqlCommand(strSQL, myConnection)
myConnection.Open()
Dim objDR as SqlDataReader
objDR = myCommand.ExecuteReader(CommandBehavior.CloseConnection)
lstCategorie.DataSource = objDR
lstCategorie.DataBind()
lstCategorie.Items.Insert(0, new ListItem("-- Choose a Category --","0"))
Catch ex as InvalidCastException
Status.Text = ex.ToString()
Catch ex As SqlException
Status.Text = "Database error: " & ex.message
Catch ex As Exception
Status.Text = "General error: " & ex.message
End Try
End Sub
!---page code
<table width="100%" border="0" cellspacing="0" cellpadding="5" height="20">
<td height="20" width="11%">
<div align="right"><font face="Verdana, Arial, Helvetica, sans-serif"
size="1" color="#FFFFFF">Browse
:</font></div>
</td>
<td height="20" width="14%">
<div align="left">
<asp:listbox id="lstCategorie" runat="server" Rows="1"
AutoPostBack="true"
DataTextField="CategoryDesc" DataValueField="CategoryID" />
</div>
</td>
I am trying to return the value of a listbox control that is included as a
user control, I can return the name of the control but I can't access the
integer value of the selected item, what do I need to do in order to return
the "option value" of the control?
Moe
!--- returned value of the control
_ctl1_lstCategorie
!-- compiled page code
<select name="_ctl1:lstCategorie" size="1"
onchange="__doPostBack('_ctl1$lstCategorie','')" language="javascript"
id="_ctl1_lstCategorie">
<option value="0">-- Choose a Category --</option>
<option value="6">...Control Valves
....</option>
<option value="10">...Dripline
....</option>
</select>
!--- page code
<%@ Control Language="vb" EnableViewState="true" %>
<% @Import Namespace="System.Data" %>
<% @Import Namespace="System.Data.SqlClient" %>
Public Sub Page_Load(sender as Object, e as EventArgs)
Public ReadOnly Property SelectedCategoriesID As String
Get
return lstCategorie.ClientID
End Get
End Property
If Not Page.IsPostBack Then
BindStates()
LoadCategories()
response.write (lstCategorie.ClientID)
end if
End Sub
Public Sub LoadCategories()
Try
Dim myConnection as New
SqlConnection(ConfigurationSettings.AppSettings("connectionString"))
Const strSQL as String = "SELECT CategoryID, '...' + CategoryDesc + '...'
AS CategoryDesc " & _
"FROM tblProductCategories ORDER BY CategoryDesc"
Dim myCommand as New SqlCommand(strSQL, myConnection)
myConnection.Open()
Dim objDR as SqlDataReader
objDR = myCommand.ExecuteReader(CommandBehavior.CloseConnection)
lstCategorie.DataSource = objDR
lstCategorie.DataBind()
lstCategorie.Items.Insert(0, new ListItem("-- Choose a Category --","0"))
Catch ex as InvalidCastException
Status.Text = ex.ToString()
Catch ex As SqlException
Status.Text = "Database error: " & ex.message
Catch ex As Exception
Status.Text = "General error: " & ex.message
End Try
End Sub
!---page code
<table width="100%" border="0" cellspacing="0" cellpadding="5" height="20">
<td height="20" width="11%">
<div align="right"><font face="Verdana, Arial, Helvetica, sans-serif"
size="1" color="#FFFFFF">Browse
:</font></div>
</td>
<td height="20" width="14%">
<div align="left">
<asp:listbox id="lstCategorie" runat="server" Rows="1"
AutoPostBack="true"
DataTextField="CategoryDesc" DataValueField="CategoryID" />
</div>
</td>