GridView自定义列<ItemTemplate> 怎么根据数据库得到的一个时间不同 然后不同显示??? 20
<ItemTemplate><%stringtime=DataBinder.Eval(Container.DataItem,"CC_TimeLimit");%><%if(...
<ItemTemplate>
<% string time = DataBinder.Eval(Container.DataItem, "CC_TimeLimit");%>
<%
if (DateTime.Now < time))
{
%>
<a id="A2" href="#" onclick="javascript:onID('<%# DataBinder.Eval(Container.DataItem,"CC_ID") %>');" ><asp:Label ID="Label3" runat="server" Text='<% #Eval("CC_Topic")%>'></asp:Label></a>
<%
}
else
{%>
<a id="A3" href="#" onclick="javascript:onID('<%# DataBinder.Eval(Container.DataItem,"CC_ID") %>');" ><asp:Label ID="Label4" runat="server" Text='<% #Eval("CC_Topic")%>'></asp:Label><font color='#999999'>已经结束</font></a>
<%
}
%>
</ItemTemplate>
大概就这个意思,但这个肯定是错的,就想问一下写一个对!
这个是我写的一个GridView 在后台绑定了数据库的数据,我就是想知道 怎么根据数据库的CC_Timelimit这个时间在前台有不同的显示,如果CC_Timelimit大于当前时间,就是火热进行中,如果CC_Timelimit小于当前时间 就说明已经结束。但我写的那一套肯定是错的,我只是想用那个表达一下我的意思。下面有一位大哥用VB写的我不太明白,我用的是C#。其实这些代码应该都在后台,听人说是写在这里面void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) 这我不会写 谁能根据我前台随便写的那个在后台帮我写下吗? 展开
<% string time = DataBinder.Eval(Container.DataItem, "CC_TimeLimit");%>
<%
if (DateTime.Now < time))
{
%>
<a id="A2" href="#" onclick="javascript:onID('<%# DataBinder.Eval(Container.DataItem,"CC_ID") %>');" ><asp:Label ID="Label3" runat="server" Text='<% #Eval("CC_Topic")%>'></asp:Label></a>
<%
}
else
{%>
<a id="A3" href="#" onclick="javascript:onID('<%# DataBinder.Eval(Container.DataItem,"CC_ID") %>');" ><asp:Label ID="Label4" runat="server" Text='<% #Eval("CC_Topic")%>'></asp:Label><font color='#999999'>已经结束</font></a>
<%
}
%>
</ItemTemplate>
大概就这个意思,但这个肯定是错的,就想问一下写一个对!
这个是我写的一个GridView 在后台绑定了数据库的数据,我就是想知道 怎么根据数据库的CC_Timelimit这个时间在前台有不同的显示,如果CC_Timelimit大于当前时间,就是火热进行中,如果CC_Timelimit小于当前时间 就说明已经结束。但我写的那一套肯定是错的,我只是想用那个表达一下我的意思。下面有一位大哥用VB写的我不太明白,我用的是C#。其实这些代码应该都在后台,听人说是写在这里面void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) 这我不会写 谁能根据我前台随便写的那个在后台帮我写下吗? 展开
4个回答
展开全部
<%#Eval('时间列')%>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
怎么根据数据库得到的一个时间不同 然后不同显示???
C#和VB.NET一样的...就是写再RowDataBound事件中
就是itemGridView.DataSource = dt
itemGridView.DataBind() 之后GridView从DATATABLE中一行一行读数据显示的时候就是RowDataBound事件,在这个事件里就可以判断某行某列的值并人工修改其显示的值,我给代码加上注释吧,你看的懂的
Protected Sub itemGridView_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs)
'更新区分 (//比如你的是时间)
Dim editkbFlag As String = e.Row.Cells(5).Text.Trim()
//string strTime = e.row.cells(A).text.trim() (其中A表示GRIDVIEW中第几列应该用过的吧)
//下面一段再不懂我就无语了...
你的就可以是
if strTime < DateTime.Now.ToString("yyyy-MM-dd")
e.Row.Cells(A).Text = "已经结束"
else
e.Row.Cells(A).Text = "火热进行中"
注:比较时间字串时是需要注意的,容易有BUG
End Sub
C#和VB.NET一样的...就是写再RowDataBound事件中
就是itemGridView.DataSource = dt
itemGridView.DataBind() 之后GridView从DATATABLE中一行一行读数据显示的时候就是RowDataBound事件,在这个事件里就可以判断某行某列的值并人工修改其显示的值,我给代码加上注释吧,你看的懂的
Protected Sub itemGridView_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs)
'更新区分 (//比如你的是时间)
Dim editkbFlag As String = e.Row.Cells(5).Text.Trim()
//string strTime = e.row.cells(A).text.trim() (其中A表示GRIDVIEW中第几列应该用过的吧)
//下面一段再不懂我就无语了...
你的就可以是
if strTime < DateTime.Now.ToString("yyyy-MM-dd")
e.Row.Cells(A).Text = "已经结束"
else
e.Row.Cells(A).Text = "火热进行中"
注:比较时间字串时是需要注意的,容易有BUG
End Sub
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
没明白你意思
C#里:DateTime.Now 时间
SQL时间是:GetDate()
C#里:DateTime.Now 时间
SQL时间是:GetDate()
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个不是手写的吧?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询