关于gridview绑定datetime的问题

gzxsj 2012-06-08 10:22:30
gridview绑定datetime,出来的结果是:2012-6-8 0:00:00 新增更新信息

现在我不想要那个时分秒,请教高手怎么办?

绑定代码如下:
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
this.bind();
}
}
public SqlConnection GetConnection()
{
string myStr = ConfigurationManager.AppSettings["ConnectionString"].ToString();
SqlConnection myConn = new SqlConnection(myStr);
return myConn;
}
protected void bind()
{
SqlConnection myConn = GetConnection();
myConn.Open();
string sqlStr = "select * from [update] ";
SqlDataAdapter myDa = new SqlDataAdapter(sqlStr, myConn);
DataSet myDs = new DataSet();
myDa.Fill(myDs);
GridView1.DataSource = myDs;

GridView1.DataBind();
myDa.Dispose();
myDs.Dispose();
myConn.Close();
}
...全文
238 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
bindofn 2012-06-08
  • 打赏
  • 举报
回复
Text='<%# Convert.ToDateTime(Eval("date")).ToString("yyyy-MM-dd") %>'>
gzxsj 2012-06-08
  • 打赏
  • 举报
回复
感谢1楼的指教

最后加了1楼的代码


if (e.Row.RowType == DataControlRowType.DataRow)
{
e.Row.Cells[0].Text = Convert.ToDateTime(e.Row.Cells[0].Text).ToShortDateString();
}


成功实现没有时分秒,结帖
gzxsj 2012-06-08
  • 打赏
  • 举报
回复
我是用代码来绑定的,gridview编辑列里面是空白

[Quote=引用 12 楼 的回复:]
gridview的列设置里面可以修改相关列的显示格式
[/Quote]
mouse128 2012-06-08
  • 打赏
  • 举报
回复
gridview的列设置里面可以修改相关列的显示格式
gzxsj 2012-06-08
  • 打赏
  • 举报
回复
请教一下6楼在哪里加呢?
jdc71264 2012-06-08
  • 打赏
  • 举报
回复
如果你用的是.NET2.0以上的版本的话 我的这个方法就好用
牟云飞 2012-06-08
  • 打赏
  • 举报
回复
convert。。楼上的就可以
liue_0612 2012-06-08
  • 打赏
  • 举报
回复
<asp:BoundField DataField="日期字段" DataFormatString="{0:yyyy-MM-dd}"
/>
gzxsj 2012-06-08
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 的回复:]
最好的方式 直接利用SQL格式化日期,而没必要取出数据来再去遍历


SQL code

Select CONVERT(varchar(100), GETDATE(), 23)--2012-06-08
[/Quote]

但是后面还有内容啊,你这样只取了日期
jdc71264 2012-06-08
  • 打赏
  • 举报
回复

<asp:BoundField DataField="日期字段" DataFormatString="{0:yyyy-MM-dd}"
  • 打赏
  • 举报
回复
最好的方式 直接利用SQL格式化日期,而没必要取出数据来再去遍历

Select CONVERT(varchar(100), GETDATE(), 23)--2012-06-08
liuchengbjaccp 2012-06-08
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]

GridView1_RowDataBound事件中处理
C# code

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
e.Ro……
[/Quote]
要是时间的话,就先把数据转成DateTime类型,然后进行格式化,其中有长整形,和短整形的,就看你想要的是哪个了。
gzxsj 2012-06-08
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]
GridView1_RowDataBound事件中处理

C# code


protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
……
[/Quote]

格式化字符串是不是yyyy-mm-dd
liuchengbjaccp 2012-06-08
  • 打赏
  • 举报
回复
1.循环GridView的单元格,把时间那列的值截取字符串;
2.在sql语句查询的时候把时间那列直接进行截取字符串或者格式化时间(推荐用这种方法);
bdmh 2012-06-08
  • 打赏
  • 举报
回复
GridView1_RowDataBound事件中处理

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
e.Row.Cells[日期列索引].Text = 格式化字符串;
}
}

62,268

社区成员

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

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

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

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