Come faccio a interrompere il testo di testata di BoundField
-
08-07-2019 - |
Domanda
In HTML nella td di una tabella puoi spezzare il testo usando <BR>
tra le parole. Funziona anche nel HeaderText di un TemplateItem ma non nel HeaderText di un BoundField. Come spezzare il testo dell'intestazione di un BoundField.
Soluzione
Imposta HtmlEncode = false
all'interno di BoundField
<asp:BoundField DataField="SomeDataField"
HeaderText="SomeHeader<br />(OtherData)"
HtmlEncode="false" />
BoundField.HtmlEncode
è vero per impostazione predefinita, il che significa che se HTML viene aggiunto nel testo verrà codificato.
Se HtmlEncode è impostato su false, il testo non è codificato e br funzionerà come previsto. Sfortunatamente non è possibile specificarlo solo per il testo dell'intestazione, influenzerà anche il contenuto della cella.
Altri suggerimenti
Per quelli di voi che cercano di farlo senza disabilitare HtmlEncode è piuttosto semplice, anche se un po 'sciocco. Basta usare una vera interruzione di linea. In questo modo ...
<asp:BoundField DataField="ProposedExtractionStartDate" HeaderText="Proposed
Extraction Start Date" SortExpression="ProposedExtractionStartDate" DataFormatString="{0:MM/dd/yyyy}" />
Questo verrà effettivamente visualizzato come multilinea quando viene eseguito il rendering HTML.
Se c'è una combinazione di caratteri che significherà questo, mi piacerebbe saperlo.