Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it L'avatar di mUrf
    Registrato dal
    Apr 2001
    Messaggi
    193

    Datagrid che tormento ....

    Salve scusate ma ho un datagrid con campi contenenti stringhe troppo lunghe (ricavate da query), come posso troncarle ? Visualizzarne solo i primi 10 caratteri con puntini di sospensione ad esempio ???

    Thanks
    mUrf

  2. #2
    Utente di HTML.it
    Registrato dal
    Aug 2001
    Messaggi
    1,482
    <%#MID(Container.DataItem("TuoCampo"),X,Y) & "..."%>


    Dove x è il carattere di partenza e y il numero di caratteri che vuoi visualizzare

    Hey hey, my my Rock and roll can never die!

  3. #3
    Utente di HTML.it L'avatar di mUrf
    Registrato dal
    Apr 2001
    Messaggi
    193
    Ehm ciao zampa28 scusa se insisto ma quella istruzione lì và inserita nel tag del BOUNDCOLUMN o dell'ITEMSTYLE ??

    Thanks
    mUrf

  4. #4
    Utente di HTML.it
    Registrato dal
    Aug 2001
    Messaggi
    1,482
    A dire la verità questo codice va bene per un TemplateColumn, per un BoundColumn non so....

    codice:
    	<ASP:TemplateColumn HeaderText="Nome Colonna" ItemStyle-HorizontalAlign="Left">
    		<ItemTemplate>
    			<Font Class="Stile1">
    			<%#MID(Container.DataItem("Campo1"),X,Y)%>
    			</Font>
    		</ItemTemplate>
    	</ASP:TemplateColumn>

    Hey hey, my my Rock and roll can never die!

  5. #5
    qualcuno sa dirmi come si fa in C#?

  6. #6
    Utente di HTML.it L'avatar di ciupaz
    Registrato dal
    Dec 2000
    residenza
    Milano
    Messaggi
    848
    Puoi prendere spunto da questo:

    <asp:templatecolumn headertext="Mia Desc" sortexpression="DESCR">
    <headerstyle wrap="False" horizontalalign="Left"></HeaderStyle>
    <itemstyle font-size="7pt" wrap="False"
    horizontalalign="Left"></ItemStyle>
    <itemtemplate>
    <asp:label id="lblToolTip" runat="server"
    tooltip='<%# DataBinder.Eval(Container.DataItem,"DESCR")%>'>
    <%# Left(DataBinder.Eval(Container.DataItem,"DESCR"),9 )%></asp:label>
    </itemtemplate>
    </asp:templatecolumn>

    In questo caso vengono visualizzati solo i primo 9 caratteri, ma se l'utente vi passa sopra col mouse, un tooltip mostra tutta la stringa.

  7. #7
    Non mi funziona. Come mai se provo ad aggiungere la sintassi da te suggerita viene generato l'errore:

    Il nome "Left" non esiste nella classe o nello spazio dei nomi "ASP.nomedellapagina_aspx". ?

  8. #8
    Utente di HTML.it L'avatar di ciupaz
    Registrato dal
    Dec 2000
    residenza
    Milano
    Messaggi
    848
    Devi importare il namespace

    Microsoft.visualbasic

  9. #9
    Utente di HTML.it L'avatar di Cyb JA
    Registrato dal
    Nov 2001
    Messaggi
    64
    oppure se non vuoi importare un namespace puoi fare una cosa del genere :


    <%(DataBinder.Eval(Container.DataItem,"DESCR").toS tring().Substring(0,10)%>

    //prima lo casti a stringa e poi ne prendi i primi 10 caratteri.

    :gren:
    ... indovinelli nell'oscurità ...

  10. #10
    se avessi potuto importare il namespace visualbasic avrebbe funzionato anche MID, il problema è che non riesco a far funzionare niente che abbia a che fare con quel namespace (forse sbaglio ad importare, qualcuno mi dice la riga corretta?). Invece ottima la soluzione di Cib JA, grazie!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.