Help me su un campo templatefield

lunedì 21 marzo 2011 - 11.51

trinity Profilo | Guru

Buongiorno,

ho un campo associato ad un db sql trasformato in templatefield...scrivo in vb 2010 strano ma all'inizio funzionava, ora ho riaperto il progetto lancio la pagina web e mi dice questo errore:

Index e length devono fare riferimento a una posizione nella stringa.
Nome parametro: length


ecco il codice:

Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

sapete dirmi il perchè?

Ciao
Cirillo Fabio
www.wondernet.biz
fabio@wondernet.biz
http://blogs.dotnethell.it/fabiocirillo/
http://wnetsoftware.blogspot.com

paoval72 Profilo | Senior Member

Come ti ho scritto nell'altro thread, probabilmente la stringa passata rientra in uno dei 3 casi:
1) è null
2) è vuota ("")
3) ha una lunghezza inferiore alla substring che cerchi: ovvero, è una stringa magari di 30 caratteri, inferiore ai 50 che hai impostato. E quindi va "fuori giri"

la soluzione sarebbe di gestire la lunghezza della stringa lato server al momento del databound della riga.


PV

trinity Profilo | Guru

a si vero ho delle stringhe inferiore ai 50 caratteri e come potrei fare a gestire questa cosa..sai a livello web non sono molto abile
Cirillo Fabio
www.wondernet.biz
fabio@wondernet.biz
http://blogs.dotnethell.it/fabiocirillo/
http://wnetsoftware.blogspot.com

paoval72 Profilo | Senior Member

Ti ripropongo l'idea del tuo thread "Gridview in asp.net"

nell'evento _RowDataBound controllola lungheza della mia cella (dipende se utilizzi un BoundFiled o un controllolo asp annidato, tipo label o textbox). Questo è un esempio, anche se non è mai consigliato utilizzare l'indice di una cella della riga
Se usi un controllo tipo label:

Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

Lato client torni alla vecchia maniera:

<asp:TemplateField HeaderText="Notizia" SortExpression="notizia"> <EditItemTemplate> <asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("notizia")%>'></asp:TextBox> </EditItemTemplate> <ItemTemplate> <asp:Label ID="Label1" runat="server" Text='<%# Eval("notizia%>'></asp:Label> </ItemTemplate> ...

Puoi provare, poi mi fai sapere.

PV
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-2017
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5