我是用IMAGE控件来显示新闻的图片的,代码如下:
<asp:Image id="Image_news" ImageUrl ='<%# "/image/news/"+DataBinder.Eval(Container.DataItem, "news_image") %>' runat="server"></asp:Image>
如果该条新闻有图片则显示出相应的图片,可是在该条新闻中没有图片时页面就会显示出一个IMAGE控件的小图标,不太好看,我想控制它不显示该怎么办?
能在该页面的.VB文件里控制吗?它的代码如下;
    Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        If Not IsPostBack Then
            fox_databind()'这个过程是建立与数据库的连接,并将数据源绑定到REAPETER控件的
        End If
        '在此处放置初始化页的用户代码
    End Sub

解决方案 »

  1.   

    aspx页面中,ImageUrl=你准备在没有内容时显示的图片在cs文件中,如果内容不为空,Image_news.ImageUrl=希望显示的图片地址
      

  2.   

    我不想要默认图片,只想在没有图片时什么都不显示,干净!
    另外,我也知道以.VB文件中如果没有图片时将该控件的显示属性设置为FALSE,关键就是我不知道IF语句中判断的条件该怎么写,也就是如何将:
    "如果IMAGE字段为空则"
    换成.VB的代码
    因为是初学,所以.....
    我把取数据的代码也帖出来吧:
        Private Sub fox_databind()
            Dim conn As New Class_data
            Dim dataset_fox As DataSet = conn.dataset("getitemidnews", Request.Params("itemid"))
            Repeater_news.DataSource = dataset_fox
            Repeater_news.DataBind()
            conn.close()
        End Sub
      

  3.   

    这样吧,我把问题再改成这样问一问:
    在一.ASPX页面中怎么即得数据表中的一个字段?
    然后怎样去判断它是否为空?
      

  4.   

    将这图片放在一个 <asp:panel 控件中,然后设这个panel不可见就行了
    也可以用<asp:multiView   在不同条件下显示不同的view
      

  5.   

    asp:Image id="Image_news" ImageUrl ='<%# "/image/news/"+DataBinder.Eval(Container.DataItem, "news_image") style="display:<%# (DataBinder.Eval(Container.DataItem, "news_image")==null)? 'none':''" %>' runat="server"></asp:Image>也许代码不对,但是思路就这样,也就是说给display也bind一下