Popolare un dropDownList con un array di numeri

lunedì 08 gennaio 2007 - 18.12

Giovanni_3478 Profilo | Senior Member

Ciao

IN VisualBasic.NET

Vorrei popolare un dropdownlist con dei numeri da 1 a 10

dato questo codice (aspx.vb)

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim numeroRighe As Integer = 10

Dim array_numeroRighe(numeroRighe)
For i As Integer = 1 To numeroRighe - 1
array_numeroRighe.SetValue(i, i)
Next

Dim ds As Data.DataSet = array_numeroRighe *qui
DropDownList1.DataSource = array_numeroRighe

End Sub


e dato quest'altro codice (aspx)
<asp:DropDownList ID="DropDownList1" runat="server">
</asp:DropDownList>

nella aspx.vb
su array_numeroRighe
mi dice
"impossibile convertire il valore di tipo matrice a 1 dimensioni di object in system.data.dataset"

Come posso fare per riempire il dropdownlist?

amelix Profilo | Expert

Prova ad aggiungerli direttamente alla DDL anzichè creare un array (unidimensionale) e poi darglielo in pasto e poi DataBindarlo.
for(int i = 1; i <= 10; i++) DropDownList1.Items.Add(i.ToString());

Questo è in C#
Andrea
http://amelix.blogspot.com/index.html

alx_81 Profilo | Guru

>Ciao
Ciao!

> Dim ds As Data.DataSet = array_numeroRighe
Qui ti da errore perchè non puoi forzare un'array monodimensionale in un dataset, che è un oggetto ben diverso..
Puoi usare l'array come sorgente, ma non puoi "immetterla" dentro un dataset..
documentazione qui:

DataSet Class
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfsystemdatadatasetclasstopic.asp

DataSource Property
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfsystemwindowsformslistcontrolclassdatasourcetopic.asp

Per popolare la tua DropDownList segui il consiglio di amelix.. senza passare da un array..
ti passo il codice in VB..

Dim i as int32 For i = 1 to 10 DropDownList1.Items.Add(i.ToString()) Next

ciao!
Alx81 =)

http://blogs.dotnethell.it/suxstellino

Giovanni_3478 Profilo | Senior Member

con il codice
Dim i as int32 For i = 1 to 10 DropDownList1.Items.Add(i.ToString()) Next
è ok.


>Puoi usare l'array come sorgente, ma non puoi "immetterla" dentro un dataset..
Volendo usando l'array come sorgente come bisogna procedere?

alx_81 Profilo | Guru

>Volendo usando l'array come sorgente come bisogna procedere?
molto semplice.. basta saltare la riga in cui usi il dataset, non ti serve proprio..
Dim numeroRighe As Integer = 10 Dim array_numeroRighe(numeroRighe) As Int32 'ricordati il tipo della matrice For i As Integer = 1 To numeroRighe - 1 array_numeroRighe.SetValue(i, i) Next DropDown.DataSource = array_numeroRighe DropD.DataBind()

tutto qui..
ma preferisco l'altro codice.. in tal caso accetta entrambe le nostre risposte



Alx81 =)

http://blogs.dotnethell.it/suxstellino

Giovanni_3478 Profilo | Senior Member

Funziona in entrambi i modi
Grazie mille
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5