gridview 列标题从后面的代码中获取这样的值 protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) { GridView grid = sender as GridView; DataRowView tableData = e.Row.DataItem as DataRowView;
if (e.Row.RowType == DataControlRowType.Header)
{
e.Row.Cells[1].Text = System.DateTime.Now.AddMonths(-3).ToString("MMMM") ;
}
}
如何从后面的代码中对这个特定的列进行排序。 文件.asp
<asp:TemplateField ItemStyle-HorizontalAlign="Left" HeaderStyle-VerticalAlign="Bottom" ItemStyle-Wrap="False">
<ItemTemplate>
<asp:Label ID="lblMonth_1" runat="server"></asp:Label>
</ItemTemplate>
</asp:TemplateField>
谢谢。
最佳答案
您可能不需要为此查看后面的代码。您使用的是哪种数据库?
您是否考虑过修改您的查询以包含另一列?
select mydate, dateadd(m, -3, mydate) as olderdate from mytable;
然后您可以将您的 gridview 字段设置为:
<asp:BoundField DataField="olderdate" HeaderText="Older Date" SortExpression="olderdate" dataformatstring="{0:MMM}">
<ItemStyle Wrap="False" />
</asp:BoundField>
并将您的 gridview 标记为 AllowSorting="true"。
关于c# - 标题排序表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12809011/