Asp.net gridview在imagebutton中动态更改图像

Asp.net gridview在imagebutton中动态更改图像,asp.net,gridview,Asp.net,Gridview,我有一个gridview,其中包含来自db的一些数据,在检查后,由于检查的结果,我希望在每一行中看到一个小的交叉/勾号图像。如何动态更改图像url <Columns> <asp:TemplateField> <ItemTemplate> <asp:Image ID="check" runat="server" ImageUrl='<%#If(Eval("check") = 1,"images/che

我有一个gridview,其中包含来自db的一些数据,在检查后,由于检查的结果,我希望在每一行中看到一个小的交叉/勾号图像。如何动态更改图像url


<Columns>
    <asp:TemplateField>
        <ItemTemplate>
            <asp:Image ID="check" runat="server" ImageUrl='<%#If(Eval("check") = 1,"images/checked.gif","images/unchceked.gif") %>' />
        </ItemTemplate>
    </asp:TemplateField>
</Columns>

您可以使用类似
的内联语句

或者使用函数获得如下结果:

<%# getImageUrl(Eval("value")) %>
Public Function getImageUrl(ByVal value As Integer) As String
   If value = 0 Then
      Return "images/unchceked.gif"
   Else
      Return "mages/checked.gif"
   End If
End Function

公共函数getImageUrl(ByVal值为整数)为字符串
如果值=0,则
返回“images/unchecked.gif”
其他的
返回“mages/checked.gif”
如果结束
端函数
格式:

<Columns>
    <asp:TemplateField>
        <ItemTemplate>
            <asp:ImageButton ID="check" runat="server" ImageUrl='<%# GetImageUrl(Eval("Check")) %>' />
        </ItemTemplate>
    </asp:TemplateField>
</Columns>
public string GetImageUrl(object checkObject)
{
     if (checkObject!= null)
     {
          bool check;
          bool parsable = bool.Parse(checkObject.ToString(), out check);
          check= parsable ? check : false;

          return check ? "~/Media/Images/tick.png" : "~/Media/Images/untick.png";
     }

     return "~/Media/Images/none.png";
}