15 messaggi dal 06 aprile 2001
www.pccom.it
Ho il seguente problema:

Estraggo dei dati da una tabella del DB e la visualizzo con DataList
all'interno del DataList devo inserire DropDownList che estrae dei dati da un'altra tabella del DB ....
Come si puo' ottenere questo risultato ??

O prodotto un piccolo esempio che ha generato il seguente errore
Nome "Misura" non dichiarato
(MISURE è l' ID del DropDownList )

Grazie per l'aiuto...

<script language="VB" runat="server">

Sub Page_Load(Sender As Object, E As EventArgs)
Lista()
end sub

Sub Lista()
Dim MyConnection as SqlConnection
Dim MyCommand as SqlDataAdapter
Dim MyCommand_1 as SqlDataAdapter
Dim ds as DataSet
Dim strSQL as string

PCCOM_PageLoad() 'informazioni DB SQL
Page.DataBind()
MyConnection = New SqlConnection(ConnectionString)

' ****************************************************************************************************** Categorie Prodotti **
strSQL = "SELECT * FROM VIEW_CategorieProdotti WHERE IDsquadra='" & Request("id") & "' ORDER BY Descrizione"

MyCommand = New SqlDataAdapter(strSQL, MyConnection)
ds = New DataSet()
MyCommand.Fill(ds, "VIEW_CategorieProdotti")

Categorie.DataSource = ds.Tables("VIEW_CategorieProdotti").DefaultView
Categorie.DataBind()


Dim values as ArrayList= new ArrayList()

values.Add ("IN")
values.Add ("KS")
values.Add ("MD")
values.Add ("MI")
values.Add ("OR")
values.Add ("TN")

Misura.DataSource = values
Misura.DataBind



end sub


</script>



</head>

<body>

<p>&nbsp;</p>
<p>&nbsp;</p>
<!-- ***** inizio DataList ***** -->
<form method="POST" action="dettaglio.asp" runat="server">
<ASP:datalist id="Categorie" runat="server"
GridLines="Vertical"
Width="98%"
border="1"
BorderColor="#111111"
cellpadding="0"
cellspacing="0"
align="center"
Font-Names="Tahoma"
Font-Size="8pt"
ItemStyle-Backcolor="#E8E8E8"
AlternatingItemStyle-Backcolor="#D4D4D4"
AutoGenerateColumns="False"
DataKeyField="IDCategoria">

<ItemTemplate>


<table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber1">
<tr>
<td width="50%"><%# DataBinder.Eval(Container.DataItem, "Descrizione")%>&nbsp;</td>
<td width="50%">
<asp:DropDownList id="Misura" runat="server" />
</td>
</tr>
</table>


</ItemTemplate>

</ASP:datalist>

</form>

</body>
Se ia lista delle misure è identico per ogni riga puoi assegnare una variabile a livello di pagina (l'arraylist che hai fatto) e poi
<asp:DropDownList id="Misura" DataSource="<%#arraylist%>" runat="server" />

Ciao

Il mio blog
Homepage
15 messaggi dal 06 aprile 2001
www.pccom.it
inserendo quanto indicatomini:

<asp:DropDownList id="Misura" DataSource="<%# ArrayList%>" runat="server" />

si verifica il seguente errore:

BC30684: "ArrayList" è un tipo e non può essere utilizzato come espressione


Eh scusa, ArrayList è per indicare il tipo di variabile. Metti il nome della variabile array

Ciao

Il mio blog
Homepage
15 messaggi dal 06 aprile 2001
www.pccom.it
avevo già effettuato la prova ad inserire

<asp:DropDownList id="Misura" DataSource="<%# values%>" runat="server" />

questo è l'errore

Nome "values" non dichiarato

Grazie per l'aiuto
15 messaggi dal 06 aprile 2001
www.pccom.it
Ecco la soluzione al problema:

Nel controllo DropDownList e stato inserita la proprietà DataSource come idicato da RICCIOLO, all'interno della proprietà è stata inserita la chiamata ad alla funzione MISURA().

GRAZIE PER LA COLLABORAZIONE.

<script language="VB" runat="server">

Sub Page_Load(Sender As Object, E As EventArgs)
Lista()
end sub

Sub Lista()
Dim MyConnection as SqlConnection
Dim MyCommand as SqlDataAdapter
Dim MyCommand_1 as SqlDataAdapter
Dim ds as DataSet
Dim strSQL as string

PCCOM_PageLoad() 'informazioni DB SQL
Page.DataBind()
MyConnection = New SqlConnection(ConnectionString)

' ****************************************************************************************************** Categorie Prodotti **
strSQL = "SELECT * FROM VIEW_CategorieProdotti WHERE IDsquadra='" & Request("id") & "' ORDER BY Descrizione"

MyCommand = New SqlDataAdapter(strSQL, MyConnection)
ds = New DataSet()
MyCommand.Fill(ds, "VIEW_CategorieProdotti")

Categorie.DataSource = ds.Tables("VIEW_CategorieProdotti").DefaultView
Categorie.DataBind()

end sub



function Misura()
dim Lista as ArrayList= new ArrayList()
Lista.Add ("S")
Lista.Add ("M")
Lista.Add ("L")
Lista.Add ("XL")
Lista.Add ("XXL")

return(Lista)
end function


</script>



</head>

<body>

<p>&nbsp;</p>
<p>&nbsp;</p>
<!-- ***** inizio DataList ***** -->
<form method="POST" action="dettaglio.asp" runat="server">
<ASP:datalist id="Categorie" runat="server"
GridLines="Vertical"
Width="98%"
border="1"
BorderColor="#111111"
cellpadding="0"
cellspacing="0"
align="center"
Font-Names="Tahoma"
Font-Size="8pt"
ItemStyle-Backcolor="#E8E8E8"
AlternatingItemStyle-Backcolor="#D4D4D4"
AutoGenerateColumns="False"
DataKeyField="IDCategoria">

<ItemTemplate>


<table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber1">
<tr>
<td width="50%"><%# DataBinder.Eval(Container.DataItem, "Descrizione")%>&nbsp;</td>
<td width="50%">
<asp:DropDownList id="Misura" DataSource="<%# Misura() %>" runat="server" />
</td>
</tr>
</table>


</ItemTemplate>

</ASP:datalist>

</form>
Il fatto è che avevi dichiarato values a libello della sub e non a livello di pagina perciò non la trovava

Ciao

Il mio blog
Homepage

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.