关于DateGrid中只显示年月日的问题

wzhlong 2003-04-08 02:45:45
在C#的Web应用程序中,使用SqlDataAdapter+ SqlConnection+ DataSet+ DataGrid显示数据库中一张表中的datetime型字段。希望只显示日期(年月日),不显示时间(时分秒)。不知能否通过DataGrid的“属性生成器”窗口中的“列”的“数据格式设置表达式”实现?如果能,如何设置表达式?如果不能,有什么解决办法?由于SqlDataAdapter同时要用于添加和删除,希望不把SqlDataAdapter对应的SQL语句由“SELECT …,OrderDate,…”改为“SELECT …,DATETIME(yy,OrderDate)+'年'+DATETIME(mm,OrderDate) +'月'+DATETIME(dd,OrderDate) +'日',…”。
...全文
159 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
wzhlong 2003-04-08
  • 打赏
  • 举报
回复
谢谢 xport(郁闷中...),您的方法太难,我查了一下SQL Server的联机丛书,还没想通如何用上。meetweb(niky)提供的“DataFormatString="{0:d}"”是我想要的解决当前问题的最好方法。我也在试验meetweb(niky)提供的第二种方法。也谢谢meetweb(niky)。
qz4365 2003-04-08
  • 打赏
  • 举报
回复
可以改为:
select ...,Convert(varchar(10),dtTime,120) as orderDate...
或者在绑定的时候加上一句:DataFormat[String](0:{d})
meetweb 2003-04-08
  • 打赏
  • 举报
回复
方法一
<asp:BoundColumn DataField="mnow" ReadOnly="True" HeaderText="日期" DataFormatString="{0:d}">
<HeaderStyle BackColor="#FFCC66"></HeaderStyle>
</asp:BoundColumn>
方法而。使用自写函数来实现
<asp:TemplateColumn HeaderText="取消">
<HeaderStyle BackColor="#FFCC66"></HeaderStyle>
<ItemTemplate>
<asp:Label runat="server" Text='<%# DReturn(DataBinder.Eval(Container, "DataItem.mDateTime")) %>' ID="Label3">
</asp:Label>
</ItemTemplate>
</asp:TemplateColumn>
.cs里写
public string DReturn(object a)
{
//自己定义喜欢的格式
}
  • 打赏
  • 举报
回复
用sql中的函数:Convert()即可!

62,266

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧