webForumDet fria alternativet

DataFormatString i codebehind

7 svar · 350 visningar · startad av Uwe

UweMedlem sedan nov. 2003181 inlägg
#1

Jag har en datagrid där som jag fyller från codebehind. Där skulle jag också vilja göra en DataFormatString på de som är datumkolumner. Typ så här:

DataGrid.DataSource= dataview;
DataGrid1.Columns[3].DataFormatString = "{0:d}";
DataGrid1.DataBind();

Men raden med DataFormatString är inte rätt, någon som vet hur man ska skriva?

m_soderlundMedlem sedan sep. 20024 733 inlägg
#2

Vad får du för felmeddelande?

erkaMedlem sedan dec. 19994 597 inlägg
#3

Vet inte hur man tilldelar det direkt men i efterhan kan du ju alltid
String.Format("{0:d}",DataGrid1.Columns[3].ToString());

UweMedlem sedan nov. 2003181 inlägg
#4

erka - jag har inte kunna testa din lösning för jag får ett ganska märkligt felmeddelande. Av någon anledning innehåller min DataGrid inte några kolumer:

DataView dataview = new DataView(datatable);
int dtsize = dataview.Table.Columns.Count; //dtsize blir här 5
DataGrid.DataSource= dataview;
int dgsize = DataGrid.Columns.Count; //dgsize blir 0

När jag sedan indexerar den kolumn som ska formateras får jag ju då en "index out of range".
/Uwe

erkaMedlem sedan dec. 19994 597 inlägg
#5

Jag menade String.Format("{0:d}",DetDuVillOmvandla);

såg nu att du skrev DataGrid1.Columns[3], tror inte du kan omvandla så utan jag menade mer på varje sträng :)

UweMedlem sedan nov. 2003181 inlägg
#6

Men är det inte kostigt att jag inte kan indexera kolumnerna i DataGriden.

Tydligen ska det gå att använda sig av BoundColumn på detta sett:

((BoundColumn) DataGrid.Columns[3]).DataFormatString = "{0:d}";

Men det förutsätter ju att man kan komma åt kolumnerna via index.

renholmMedlem sedan apr. 20012 048 inlägg
#7

Kan du inte ange det i html-koden? Ungefär så här:

<asp:BoundColumn ... DataFormatString="{0:d}" />
UweMedlem sedan nov. 2003181 inlägg
#8

renholm - Det hade varit den enklaste lösningen, men i mitt fall fyller jag datagridden dynamiskt och vet där med inte hur många kolumner jag har, eller vilka av dem som ska formateras i förväg.

Genererad på 362 ms · cache AV · v20260730165559-full.f96bc7eb