日期:2014-05-19  浏览次数:20430 次

如何计算时间间隔并用DataGrid绑定显示出来
要把数据库里原来的时间   (upDateTime)和现在时间相减,求出差值,并绑顶到DataGrid上,不知道如何写?

                                <asp:TemplateColumn>
                                                <ItemTemplate>
                                                      <%#   DataBinder.Eval(Container.DataItem, "upDateTime ")%>
                                                </ItemTemplate>
                                </asp:TemplateColumn>


我的思路是用DataGrid的模板列来绑定数据,但是计算差值的表达式不知道该怎么写出来绑定到DataGrid上?请高手帮我写一个,小弟菜鸟一只,求高人帮忙.

------解决方案--------------------
你先把数据绑定出来计算或者在sql里面计算好都没有问题啊;
TimeSpan aa = ((DateTime)e.Item.Cells[你绑定的列].Text) - ((DateTime)e.Item.Cells[你绑定的列].Text);
写在DataItemBound事件里面
------解决方案--------------------
<asp:TemplateColumn>
<ItemTemplate>
<%# GetSpanTime(DataBinder.Eval(Container.DataItem, "upDateTime "))%>
</ItemTemplate>
</asp:TemplateColumn>
//在后台代码里写
public string GetSpanTime(string CurrentTime)
{
TimeSpan _CurrentSpanTime=Convert.DateTime(CurrentTime)-DateTime.Now;
return _CurrentSpanTime.在这里选择你要的间隔,是秒,还是分,还是小时
}

------解决方案--------------------
dim restday as Timespan=Convert.DateTime(CurrentTime).substring(DateTime.Now)

------解决方案--------------------
<asp:TemplateColumn>
<ItemTemplate>
<%# (DateTime.Now - (DateTime)DataBinder.Eval(Container.DataItem, "upDateTime ")).Sections%>
</ItemTemplate>
</asp:TemplateColumn>