【问题标题】:Using Eval Boolean to set a style for an asp.net control使用 Eval Boolean 设置 asp.net 控件的样式
【发布时间】:2016-12-21 15:05:45
【问题描述】:

我有一个 asp:ListView 控件,其中包含如下设置的一堆图像:

<asp:ListView ID="lvSliderPhotos" runat="server">
    <ItemTemplate>
        <asp:Image ID="imgSliderPhoto" runat="server"
            ImageUrl='<%# Eval("ThumbnailPath") %>' />
    </ItemTemplate>
</asp:ListView>

对于包含这些的数据库表,我有一个名为 IsPublic 的字段,它存储一个布尔值。如果值为 false,如何将样式应用于 asp:Image 控件?

我基本上想要这样的东西:

<asp:Image ID="imgSliderPhoto" runat="server"
    ImageUrl='<%# Eval("ThumbnailPath") %>'
    Style='<if (!Eval("IsPublic") { set a style property }>' />

知道如何实现吗?

【问题讨论】:

    标签: c# asp.net listview eval conditional-statements


    【解决方案1】:

    您可以在图像控件的CssClass 属性中检查IsPublic 的值,并将其设置为所需的样式规则:

    CssClass='<%# Convert.ToBoolean(Eval("IsPublic")) ? "public" : "private" %>'
    

    完整示例:

      <head runat="server">
        <title></title>
        <style type="text/css">
            .public {
                border: 6px solid red;
            }
    
            .private {
                border: 6px solid black;
            }
        </style>
    </head>
    <body>
        <asp:Image ID="Image1" runat="server" />
        <form id="form1" runat="server">
            <asp:ListView ID="lvSliderPhotos" runat="server">
                <ItemTemplate>
                    <asp:Image ID="imgSliderPhoto" runat="server"
                        ImageUrl='<%# Eval("ThumbnailPath") %>' CssClass='<%# Convert.ToBoolean(Eval("IsPublic")) ? "public" : "private" %>' />
                </ItemTemplate>
            </asp:ListView>
        </form>
    </body>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-02
      • 1970-01-01
      • 2014-06-28
      • 2015-08-26
      • 2016-07-05
      • 1970-01-01
      相关资源
      最近更新 更多