有条理地在Gridview Boundfield Cell中显示图像

时间:2012-07-16 14:38:06

标签: asp.net datagrid

我的Gridview有2列: 计划值 实际值

我从表中获取数据。我需要在第二列(值之后)显示向上或向下箭头图像,具体取决于如下所示的值:

| plan | actual |                       

| 40    | 50 ^  |                        

即使是实际的>计划然后在相反的情况下显示实际列向下箭头中的值之后的箭头。 我怎样才能做到这一点?

1 个答案:

答案 0 :(得分:1)

试试这个:

添加模板字段:

<asp:TemplateField HeaderText="Territories"><ItemTemplate>
          <asp:Literal ID="litActual" runat="server"></asp:Literal>
        </ItemTemplate>
        </asp:TemplateField>

C#代码:

    void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType == DataControlRowType.DataRow)
        {
            Literal litActual= (Literal)e.Row.FindControl("litActual");

    if(Convert.ToInt32( ((DataRowView) e.Row.DataItem)["actual"]) > Convert.ToInt32( ((DataRowView) e.Row.DataItem)["plan"]))
      litActual.Text = ((DataRowView) e.Row.DataItem)["actual"].ToString() + " <img src="upimageurl"></img>";
   else
    litActual.Text = ((DataRowView) e.Row.DataItem)["actual"].ToString() + " <img src="downimageurl"></img>";

        }
    }