<asp:TemplateField HeaderText="Status" ItemStyle-Width="15%">
<ItemTemplate>
<asp:Image ID="Status" runat="server" />
</ItemTemplate>
</asp:TemplateField>
我在我的网格视图中有这一列,但是我的表中没有状态列,我使用rowdatabound根据其他列中的值显示图像。
protected void MyGrid_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
Image img = (Image)e.Row.FindControl("Status");
DateTime received;
DateTime read;
DateTime.TryParse(Convert.ToString(DataBinder.Eval(e.Row.DataItem, "TimeReceived")), out received);
DateTime.TryParse(Convert.ToString(DataBinder.Eval(e.Row.DataItem, "TimeRead")), out read);
if (received == DateTime.MinValue)
{
img.ImageUrl = "Styles/Images/red.png";
img.ToolTip = "Message Not Received";
}
else (read == DateTime.MinValue)
{
img.ImageUrl = "Styles/Images/amber.png";
img.ToolTip = "Message Received";
}
img.Visible = true;
}
}
如何对状态列进行排序,其他列我已经使用列名作为排序表达式并对其进行了排序。但是对于这个带有图像的列,我该如何进行排序。