my.ASPItalia.com
ASP.NET
|
HTML5
|
LINQ e Entity Framework
|
Silverlight
|
Windows Phone
|
.NET Framework
|
Libro WP7
|
Libro HTML5
|
Corso on-site HTML5
Iscriviti
Login
Newsletter
Home
Articoli
Script
Notizie
FORUM
Blogs
Lab
Media
Tutorials
Corsi
Libri
Tags
Tutti i forum
Ricerca
FAQ
Fai una domanda
Drop Down List: errore nella selezione del SelectedItem.Text
in
.NET Framework
>
ASP.NET 2.0
Ultimo messaggio
1
2
>>
mbizzaro
il 7 luglio 2008 alle 11:07
319 messaggi
dal 05 agosto 2005
Ciao Ragazzi,
In una webform ho un bottone e un Detailsview agganciato a un codice boud nel codebehind.
All'interno di questa ho piazzato una DDL e l'ho riempita in questo modo (sub ovviamente richimata dal Protected Sub dv_details_1_DataBound):
Sub fill_DDL()
Dim lb_size As Label = TryCast(dv_details_1.FindControl("lb_size"), Label)
Dim ddl_size As DropDownList = TryCast(dv_details_1.FindControl("ddl_size"), DropDownList)
lb_size.Visible = False
Using myConnection As New SqlConnection(ConfigurationManager.ConnectionStrings("test123").ConnectionString)
Const SQL As String = "SELECT distinct ImageSize.imgSize, ImageSize.imgnxsize FROM ImagePreview INNER JOIN ImageSize ON ImagePreview.imgCode = ImageSize.imgCode WHERE (ImagePreview.imgVisible = 1) AND (ImagePreview.imgCode = @imgCode) ORDER BY ImageSize.imgSize"
Dim myCommand As New SqlCommand(SQL, myConnection)
myCommand.Parameters.AddWithValue("@imgCode", Request.QueryString("imgCode").ToString)
Try
myConnection.Open()
Dim myReader As SqlDataReader = myCommand.ExecuteReader
Do While myReader.Read()
Dim NewItem As New ListItem
NewItem.Text = myReader("imgSize")
NewItem.Value = myReader("imgnxsize")
If NewItem.Value = "0" Then
NewItem.Text = myReader("imgSize") + " - Sold out"
End If
ddl_size.Items.Add(NewItem)
Loop
myReader.Close()
myConnection.Close()
Catch ex As Exception
Response.Redirect("~/Default2.aspx")
End Try
End Using
End Sub
----------------------------------------------------
Adesso, selezionato un item dalla DDL, al click del botton dovrei intercettare il SelectedItem.Text. Il mio problema invece è che mi viene selezionato il primo item della lista che non abbia questa condizione: NewItem.Value = "0" .
La DDL è fattoa così:
<asp:DropDownList ID="ddl_size" runat="server" AppendDataBoundItems="True" >
</asp:DropDownList>.
Avete un'idea del perchè non riesca a selezionare il corretto SelectedItem.Text?
Grazie
Marco
Rispondi
Quoting
fabrica
il 7 luglio 2008 alle 11:20
1.731 messaggi
dal 03 dicembre 2001
www.fabricasoft.net
Sei certo di non rientrare nella procedura fill_DDL() anche in postback ?
Se è così ti verrà sempre restituito il primo valore.
Fabrizio Canevali
Rispondi
Quoting
mbizzaro
il 7 luglio 2008 alle 11:52
319 messaggi
dal 05 agosto 2005
Ciao Fabrizio,
Ho piazzato un break point alla chiamata della Sub Fill_DLL ma ci passo solo alla chiamata della Protected Sub dv_details_1_DataBound.
Ho anche inserito un
If Not Page.IsPostBack Then
fill_DDL()
end if
all'interno della Protected Sub dv_details_1_DataBound, ma il risultato non cambia. Oltretutto, se passassi 2 volte o più dalla fill_DDL, mi aspetterei di vedere come primo item selezionato:
Select size
essendo la mia DDL fatta così:
<asp:DropDownList ID="ddl_size" runat="server" AppendDataBoundItems="True" >
<asp:ListItem>Select size</asp:ListItem>
</asp:DropDownList>
Invece mi viene selezionato il primo item della lista che non abbia questa condizione: NewItem.Value = "0"
Rispondi
Quoting
fabrica
il 7 luglio 2008 alle 12:42
1.731 messaggi
dal 03 dicembre 2001
www.fabricasoft.net
Ciao, purtoppo non posso replicare il codice ... che sembra corretto.
Ti conviene fare un pò di debug e controllare la sorgente dati.
Fabrizio Canevali
Rispondi
Quoting
mbizzaro
il 7 luglio 2008 alle 14:12
319 messaggi
dal 05 agosto 2005
Ho torovato.
Il problema è appunto sulla DDL. Penso sia un baco di Microsoft.
Ho cambiato il codice in maniera tale che NewItem.Value fosse sempre diverso per ogni item della mia DDL, in questo modo:
Do While myReader.Read()
Dim NewItem As New ListItem
NewItem.Text = myReader("imgSize")
NewItem.Value = myReader("imgSize") + CStr(myReader("imgnxsize"))
_size = myReader("imgnxsize")
If _size = "0" Then
NewItem.Text = myReader("imgSize") + " - Sold out"
End If
ddl_size.Items.Add(NewItem)
Loop
e adesso, al click e nel postback del bottone il SelectedItem.Text risulta corretto.
Rispondi
Quoting
fabrica
il 7 luglio 2008 alle 15:09
1.731 messaggi
dal 03 dicembre 2001
www.fabricasoft.net
beh che dire un pò (m)bizzarro
Fabrizio Canevali
Rispondi
Quoting
nostromo
il 7 luglio 2008 alle 15:52
14.744 messaggi
dal 18 febbraio 2004
Contributi
www.soluzioni4d.it
|
Blog
bhe no non è affatto bizzarro ne è un baco, se ogni item ha il solito Value è impossibile per asp.net ma anche per un essere umano scegliere tra
<asp:ListItem>Ciao</asp:ListItem>
<asp:ListItem>Ciao</asp:ListItem>
<asp:ListItem>Ciao</asp:ListItem>
<asp:ListItem>Ciao</asp:ListItem>
ciao marco
Chi parla senza modestia troverà difficile rendere buone le proprie parole.
Confucio
http://nostromo.spaces.live.com/default.aspx
Rispondi
Quoting
mbizzaro
il 7 luglio 2008 alle 17:57
319 messaggi
dal 05 agosto 2005
Ciao Marco, il problema è ben più grave:
la mia DDL è composta così:
<asp:ListItem>Ciao</asp:ListItem>
<asp:ListItem>Domani</asp:ListItem>
<asp:ListItem>Stasera</asp:ListItem>
<asp:ListItem>Domenica</asp:ListItem>
e, ad ogni item è agganciato un Text diverso, mentre il Value pùo essere uguale
Rispondi
Quoting
1
2
>>
Salto rapido
Ultimi messaggi
Tutti i forum
Ricerca
Utenti online
ASP.NET
ASP.NET 2.0
ASP.NET 3.5
ASP.NET 4.0
.NET Framework
Silverlight
Windows Phone
Windows Presentation Foundation e WinForms
Windows Communication e Workflow
ASP - avanzato
ASP - base
SQL Server e MySQL
Libri
Hosting
Altri linguaggi e tecnologie
Windows Server, IIS & Security
E-commerce
OT
Commenti: blogs e notizie
Eventi
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.
In primo piano
Speciale web mobile: costruire applicazioni con ASP.NET, jQuery Mobile e PhoneGap
Speciale Silverlight 5: tutte le novità
Rilasciato il bollettino MS11-100 per risolvere i problemi di attacchi DoS di ASP.NET
I più letti di oggi
Le funzionalità di drag and drop di Silverlight 4.0
Zip e ASP.NET
Windows 8 su ARM: avrà il desktop, Office e il connected standby
.NET Campus 2012 - Roma
Disponibile il codice sorgente di ASP.NET MVC
Windows Server AppFabric in versione 1.0 RTM
jQuery UI in hosting su Microsoft CDN
Media
Windows Phone 7.5 Developer Day: marketplace e strumenti per monetizzare le app
Windows Phone 7.5 Developer Day: costruire app con Visual Studio 2010 e Windows Phone Runtime
Tutti i media
In evidenza
Speciale web mobile: costruire applicazioni con ASP.NET, jQuery Mobile e PhoneGap
Speciale Silverlight 5: tutte le novità
Sviluppare applicazioni per Windows Phone: scopri come fare con il nostro nuovissimo libro!
Sviluppa le applicazioni del futuro oggi: impara con il nostro libro HTML5 Espresso!
Community Days 2012 - Milano
Windows 8 su ARM: avrà il desktop, Office e il connected standby
Rilasciato Entity Framework 4.3
Sovrascrivere il tipo di esecuzione di una query PLINQ
MISC
I nostri autori
Collabora con noi!
Media Kit - Pubblicità sul nostro network