【问题标题】:Datalist not getting bound properlyDatalist 未正确绑定
【发布时间】:2013-12-05 13:05:51
【问题描述】:

我有以下数据列表:

 <asp:DataList ID="dlMovieImages" runat="server" RepeatDirection="Horizontal" RepeatColumns="6"
                                    Width="100%">

                                    <ItemTemplate   >
                                        <div class="creamebox w49" id="inDiv" runat="server">
                                            <table width="95%" border="0" align="center" cellpadding="3" cellspacing="2" style="padding-top: 10px">
                                                 <tr>
                                                <td colspan="2" align="left" valign="top">
                                                     <asp:Label ID="lblMovieName" runat="server" CssClass="NormalTextBig" Visible="false">MovieName</asp:Label>                                                </td>

                                                </tr>
                                                <tr>

                                                   <td align="left" colspan="2" valign="top">
                                                     <asp:Image ID="imgSmall" runat="server" width="150" Height="200"  Visible="false"/> 
                                                   </td>
                                                </tr>
                                                <tr>
                                                <td colspan="2" align="left" valign="top">
                                                    <asp:FileUpload ID="FUImage" runat="server" CssClass="NormalText"  Visible="false"/>
                                                    <asp:LinkButton ID="lnkUpload" runat="server" CssClass="JustLinks" CommandName="Upload" CommandArgument='<%# Eval("MovieID") %>'  Visible="false">Upload</asp:LinkButton>
                                                </td>

                                                </tr>

                                            </table>
                                        </div>
                                    </ItemTemplate>
                                                                                                    </asp:DataList>

用以下代码绑定它:

 If e.Item.ItemType = ListItemType.AlternatingItem Or e.Item.ItemType = ListItemType.Item Then

                If rbMovies.SelectedValue = "0" Then
                    flag = True
                    If System.IO.File.Exists(Server.MapPath("~/MoviePoster/" & e.Item.DataItem("movieid") & "_L.jpg")) And System.IO.File.Exists(Server.MapPath("~/MoviePoster/" & e.Item.DataItem("movieid") & "_S.jpg")) Then
                        CType(e.Item.FindControl("lblMovieName"), Label).Text = e.Item.DataItem("movieid") & ". " & e.Item.DataItem("moviename")
                        CType(e.Item.FindControl("imgSmall"), System.Web.UI.WebControls.Image).ImageUrl = "~/MoviePoster/" & e.Item.DataItem("movieid") & "_S.jpg"
                    Else
                        TotalnoImage += 1
                        CType(e.Item.FindControl("lblMovieName"), Label).Text = e.Item.DataItem("movieid") & ". " & e.Item.DataItem("moviename")
                        CType(e.Item.FindControl("imgSmall"), System.Web.UI.WebControls.Image).ImageUrl = "~/MoviePoster/" & "no_image_S.jpg"
                    End If
                End If

                Dim divControl As HtmlGenericControl = TryCast(e.Item.FindControl("inDiv"), HtmlGenericControl)

                If rbMovies.SelectedValue = "1" Then
                    If System.IO.File.Exists(Server.MapPath("~/MoviePoster/" & e.Item.DataItem("movieid") & "_L.jpg")) And System.IO.File.Exists(Server.MapPath("~/MoviePoster/" & e.Item.DataItem("movieid") & "_S.jpg")) Then
                        divControl.Visible = False
                    Else
                        divControl.Visible = True
                        flag = True
                        TotalnoImage += 1
                        CType(e.Item.FindControl("lblMovieName"), Label).Text = e.Item.DataItem("movieid") & ". " & e.Item.DataItem("moviename")
                        CType(e.Item.FindControl("imgSmall"), System.Web.UI.WebControls.Image).ImageUrl = "~/MoviePoster/" & "no_image_S.jpg"
                    End If
                End If

                If flag = True Then
                    CType(e.Item.FindControl("imgSmall"), System.Web.UI.WebControls.Image).Visible = True
                    CType(e.Item.FindControl("lblMovieName"), Label).Visible = True
                    CType(e.Item.FindControl("FUImage"), FileUpload).Visible = True
                    CType(e.Item.FindControl("lnkUpload"), LinkButton).Visible = True
                End If

            End If

当 rbMovies="0" 我想显示文件夹中的所有图像,而当 rbMovies="1" 只显示一个特定图像,即“noimage”。

当 Datalist 被绑定时,它显示如下:

在 noimage 不适用的地方,它显示空白项目,如第 3 和第 10 之后所示..

我希望它在一行中。

请帮帮我。

【问题讨论】:

    标签: c# asp.net .net vb.net visual-studio-2008


    【解决方案1】:

    尝试在具有属性 display:hidden 的表格上添加一个 css 类

    mytable.hidden {可见性:隐藏;}

    还在表上添加一个 runat="server" 并为其命名。 您可以在代码隐藏中添加/删除 cssclass

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-12-28
      • 1970-01-01
      • 2013-08-26
      • 1970-01-01
      • 2023-04-02
      • 2018-05-18
      • 2014-02-05
      • 2013-08-11
      相关资源
      最近更新 更多