2009-06-05 19 views
1

Mit einem .NET Repeater gibt es sowieso Methoden in der #Eval ('') Anweisung aufzurufen? Wenn ich zum Beispiel an ein Objekt mit einer DateTime-Eigenschaft binde, wäre es sehr praktisch, #Eval ("ADateTimeProperty.ToString ('hh: mm')") oder etwas in diesen Zeilen zu setzen. Ist die einzige Option zum Erstellen einer anderen Eigenschaft, die eine formatierte DateTime zurückgibt?Repeater .net Eigenschaften und Methoden

Antwort

4

Absolut. Für Ihre Datetime-Problem, Sie können jedoch nur verwendet werden:

<%# ((DateTime)Eval("ADateTimeProperty").ToString("hh:mm") %> 

Wenn Sie eine Methode aufrufen wollten, könnten Sie tun:

<%# MyCustomMehtod(Eval("ADateTimeProperty")) %> 

Und auf der Code-behind:

protected string MyCustomMethod(object input) 
{ 
    return DateTime.Parse(input.ToString()).ToString("hh:mm"); 
} 
+0

Danke Chris, sehr geschätzt! – Daniel

2

Sie können die Überladung der Methode Eval verwenden, die als zweiten Parameter eine Formatzeichenfolge verwendet:

<%# Eval("ADateTimeProperty", "{0:hh:mm}") %> 
Verwandte Themen