listview也显示空图像字段 [英] listview is showing empty images fields also

查看:73
本文介绍了listview也显示空图像字段的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

嗨!

我有一个列表视图,显示来自数据库的图像。这是下面的代码。

Hi!
I have a listview which is showing images from database. here is the code below.

<asp:ListView runat="server" ID="ImageListView" ItemPlaceholderID="itemPlaceHolder" 



     GroupPlaceholderID="groupPlaceHolder" >
    <LayoutTemplate>
        
        <div  runat="server" id="groupPlaceHolder">
        </div>
    </LayoutTemplate>
    <GroupTemplate>
        <span>
            <div id="itemPlaceHolder"  runat="server"></div>
        </span>
    </GroupTemplate>
    <ItemTemplate>
     <asp:LinkButton ID="gdviewlnk" runat="server" onclick="gdviewlnk_Click" CommandArgument='<%#Eval("CharityID") %>'>
         <asp:Image ID="Image2" Height = "200" Width = "200" runat="server"

                      

             ImageUrl = '<%# "UserImages.ashx?id="+Eval("CharityID") %>' /></asp:LinkButton>
      
    </ItemTemplate>
    <EmptyItemTemplate>
        <td />
    </EmptyItemTemplate>
    <EmptyDataTemplate>
        <h3>No Charity available</h3>
    </EmptyDataTemplate>
   
</asp:ListView>





这是我背后的代码文件



And this is my code behind file

public void LoadOrgs()
   {

       ImageListView.DataSource = userimgbll.GetItems();
       ImageListView.DataBind();
   }





目前在DB中有两条记录它需要这两条记录,但它也显示了一些空图像。有人可以请告诉我如何避免DB中不存在的那些空的图像。

提前谢谢



Currently there are two records in DB it takes those two records but it is also showing some empty images. Can somebody please tell me how to avoid those empty imges which dont exist in DB.
Thanks in advance

推荐答案

处理ListView.ItemDataBound Event [ ^ ]活动。



在活动中,检查 ImageUrl 是否为空白或不。如果是空白,则隐藏它。



代码看起来像......

Handle ListView.ItemDataBound Event[^] Event.

Inside the Event, check if the ImageUrl is blank or not. If blank, then hide it.

Code would look something like...
protected void ImageListView_ItemDataBound(object sender, ListViewItemEventArgs e)
{
    if (e.Item.ItemType == ListViewItemType.DataItem)
    {
         Image userImage = (Image)e.Item.FindControl("Image2");

         if(userImage != null && string.IsNullOrEmpty(userImage.ImageUrl))
         {
             userImage.Visible = false;
         }
    }
}



在标记中声明事件,如...


Declare the Event in Markup like...

<asp:ListView runat="server" 

              ID="ImageListView" 

              ItemPlaceholderID="itemPlaceHolder"  

              OnItemDataBound="ImageListView_ItemDataBound"  

              GroupPlaceholderID="groupPlaceHolder">


这篇关于listview也显示空图像字段的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆