2009-06-05 48 views
1

有一个.NET中继器是否有调用#Eval('')指令中的方法?例如,如果我绑定到具有DateTime属性的对象,那么在这些行上设置#Eval(“ADateTimeProperty.ToString('hh:mm')”)或其他内容会非常方便。创建另一个属性的唯一选择是返回格式化的DateTime吗?中继器.net属性和方法

回答

4

绝对如此。为了您的日期时间的问题,但是,你可以使用:

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

如果你想调用一个方法,你可以这样做:

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

和代码隐藏:

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

谢谢克里斯,非常感谢! – Daniel 2009-06-05 22:16:08

2

您可以使用Eval方法的过载,该方法将格式字符串作为第二个参数:

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