Textbox e formattazione campo

venerdì 17 ottobre 2008 - 16.44

squilibrio Profilo | Expert

Ciao, in un gridview ho inserito un TB che visualizza una data.... campo datetime

io vorrei visualizzare solo la data

ho provato ad inserire

DataFormatString="{0:d}"

ma non funziona

<asp:TemplateField HeaderText="DataSaldo" SortExpression="DataSaldo">
<ItemTemplate>
<asp:TextBox ID="tbDataSaldo" DataFormatString="{0:d}" Width="80" CssClass="Testo8" runat="server" Text='<%# Bind("DataSaldo") %>'></asp:TextBox>
</ItemTemplate>
<HeaderStyle CssClass="Testo8" Font-Bold="True" />
</asp:TemplateField>


cosa devo fare?

Grazie

Brainkiller Profilo | Guru

>cosa devo fare?
>Grazie

Probabilmente funziona anche come hai detto tu, ma prova a fare così:

DateTime.Parse(Bind("DataSaldo").ToString()).ToShortDateString()

Cioè un parsing e una riformattazione.
Ciao

David De Giacomi | <empty>
http://blogs.dotnethell.it/david/

balfaz Profilo | Expert

prova con questa stringa

dataformatstring = "{0:dd/MM/yyyy}"
"Ci sono due tipi di pazzi, quelli che dicono pazzie e quelli che le fanno diventare una realtà."

squilibrio Profilo | Expert

per Brainkiller

non voglio farlo da codebehind me nall'HTML del gridview

per belfaz

non funzia :(

Brainkiller Profilo | Guru

>per Brainkiller
>non voglio farlo da codebehind me nall'HTML del gridview

Appunto, intedevo di sostituire quello che hai:

Text='<%# Bind("DataSaldo") %>'>

con questo:

Text='<%# DateTime.Parse(Bind("DataSaldo").ToString()).ToShortDateString() %>'>

Ciao

David De Giacomi | <empty>
http://blogs.dotnethell.it/david/

gae58 Profilo | Senior Member

ciao aggiunge questo comando:
DataFormatString="{0:d}" HtmlEncode="False"
in particolare è l'HtmlEncode che serrve


Gaetano

squilibrio Profilo | Expert

Ottengo questo errore

Errore del parser
Descrizione: Errore durante l'analisi di una risorsa necessaria per soddisfare la richiesta. Rivedere i dettagli relativi all'errore e modificare in modo appropriato il file di origine.

Messaggio di errore del parser: Il formato del tag server non è corretto.

Errore nel codice sorgente:


Riga 45: <asp:TemplateField HeaderText="DataSaldo" SortExpression="DataSaldo">
Riga 46: <ItemTemplate>
Riga 47: <asp:TextBox ID="tbDataSaldo"DataFormatString="{0:d}" HtmlEncode="False" Width="80" CssClass="Testo8" runat="server" Text='<%# Bind("DataSaldo") %>'></asp:TextBox>
Riga 48: </ItemTemplate>
Riga 49: <HeaderStyle CssClass="Testo8" Font-Bold="True" />

paoval72 Profilo | Senior Member

Ciao, mi sobno creato un datatable con un paio di colonne, tra le quali una con la data odierna, tanto per provare.
A me questo funziona:
Text='<%# Eval("Data","{0:d}") %>'>

a patto però che la colonna della data sia di tipo datetime.
Come fai il databinding? I campi del db sono in datetime?

PV

gae58 Profilo | Senior Member

vedi che forse manca uno spazio prima delle virgolette


Gaetano

squilibrio Profilo | Expert

Text='<%# Eval("Data","{0:d}") %>'>

Grazie ragazzi, questo è perfetto!!
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-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5