强类型ListView的EditItemTemplate中的日期格式

时间:2014-06-30 15:20:40

标签: c# asp.net

这是我对ListView的EditItemTemplate部分的标记,我想渲染短日期格式:

<asp:TextBox ID="txtFechaArribo" runat="server" Text='<%# string.Format("{0:dd/MM/yyyy}", BindItem.FechaArribo ) %>'>

产生运行时异常:

  

BindItem在当前上下文中不存在

没有格式表达式,它可以工作,但是具有不需要的时间组件。建议?

2 个答案:

答案 0 :(得分:1)

您可以使用Bind("FechaArribo","{0:d}"),但从技术上讲,它会违反强类型。

答案 1 :(得分:1)

最后经过两天的努力,我得到了格式化字段值的双向模型绑定问题的解决方案。只需删除TextBox属性文本后面的“”或“”即可。它对我来说就像一个魅力!但是,如果将TextBox的TextMode属性用于Date,请将其删除。因为,它不会显示来自服务器或数据库的值。如果您想使用日期选择器或日历,您可以简单地添加一个AJAX CalendarExtender控件来从日历中选择日期。

<asp:TextBox ID="txtFechaArribo" runat="server" Text=<%# Bind("FechaArribo", "{0:dd/MM/yyyy}") %>/>