1

我有一个 ASP.NET GridView,其中有一列映射到布尔值。我想显示图像而不是真/假。

<asp:GridView ID="GridView2" runat="server" AutoGenerateColumns="false" Width="980">
    <Columns>
    <asp:TemplateField HeaderText="Selected">
    <ItemTemplate>
        <asp:Image ID="Image4" runat="server" ImageUrl='<%# (Boolean.Parse(Eval("is_selected").ToString())=="1" ? "~/images/tick.png" : "~/images/cross.png" %>'   />
    </ItemTemplate>
    </asp:TemplateField>
     </Columns>
    </asp:GridView>
4

2 回答 2

3

只需更换.ToString())=="1".ToString())==true

<asp:GridView ID="GridView2" runat="server" AutoGenerateColumns="false" Width="980">
    <Columns>
    <asp:TemplateField HeaderText="Selected">
    <ItemTemplate>
        <asp:Image ID="Image4" runat="server" ImageUrl='<%# (Boolean.Parse(Eval("is_selected").ToString())==true ? "~/images/tick.png" : "~/images/cross.png" %>'   />
    </ItemTemplate>
    </asp:TemplateField>
     </Columns>
    </asp:GridView>
于 2016-01-19T11:27:51.627 回答
2

我建议您将此解析逻辑移到视图模型类中,该类解析逻辑并在字符串属性中返回图像 url。这样,它将是可单元测试的并且更易于管理。

于 2013-08-30T04:39:36.153 回答