怎么样将文件夹下边的图片绑定在DATALIST上边我想实现的功能就是用来管理上传的图片

解决方案 »

  1.   

    自定义模板中使用image控件。
      

  2.   

    http://singlepine.cnblogs.com/articles/288027.html
      

  3.   

    同意sp1234(asp.net让我开始理解 ui 架构,架构让我超越asp.net)
      

  4.   

    建立一个模板列,放入一个<Img>
    <IMG height=100 alt="" src='UpImages/<%# DataBinder.Eval(Container,"DataItem.imagename")%>' width=100 border=0>
    然后绑定DataList,取出图片名,把src连接到指定的文件夹中
    UpImages是存放图片的文件夹。
      

  5.   

    先把图片的ID存入数据库中..再根据SQL语句读相对应路径下的图片.
    建一个模板列.放一个Image控件.字段绑定..<asp:Image id=Image1 Width="101px" Height="80px" ImageUrl='<%# DataBinder.Eval(Container, "DataItem.pic") %>' Runat="server?></asp:Image> 注:pic是我新建的别名.存放的是图片的路径!!!接下来就在绑定事件里写SQL语句了.
    string sql="select 'd:\\彩图\\'+ id + '.gif' as pic, id,type from pic where type='花季少女' order by ID asc ";
    da = new SqlDataAdapter(sql,conn);
    ds = new DataSet();
    后面的应该知道写了吧.无非就是绑定过程而以.
      

  6.   

    使用image控件,路径指向图片即可
      

  7.   

    private void Page_Load(object sender, System.EventArgs e)
    {
    if (!IsPostBack)
    {
    Hashtable ht=new Hashtable ();
    ht.Add (1,"../kind1.gif");
    ht.Add (2,"../kind2.gif");
    DataList1.DataSource =ht;
    DataList1.DataBind ();
    SetBind();

    }
    }<asp:DataList id="DataList1" style="Z-INDEX: 105; LEFT: 376px; POSITION: absolute; TOP: 248px"
    runat="server">
    <ItemTemplate>
    <asp:Image id="Image1" runat="server" Width="40px" ImageUrl ='<%# ((DictionaryEntry)Container.DataItem).Value.ToString() %>'></asp:Image>
    </ItemTemplate>
    </asp:DataList>
      

  8.   

    //*****你把图片上传到服务器上//*****把上传图片得文件名保存到数据库中,后然进行邦定即可<asp:DataList ID="DLList" Runat="server" RepeatColumns="3">
    <ItemTemplate>
    <table border="0" cellpadding="0" cellspacing="0">
    <tr>
    <td>
    <a href='uploadfileds/<%# DispalyDefaultImages(DataBinder.Eval(Container.DataItem,"ProductID").ToString())%>' title='点击这里放大图片' target=_blank>
    <img src='uploadfileds/<%# DispalyDefaultImages(DataBinder.Eval(Container.DataItem,"ProductID").ToString())%>' border=0 width=100 height=100>
    </a>
    </td>
    </tr>
    </table>
    </ItemTemplate>
    </asp:DataList>//****在后在邦定数据即可!//****如果服务没有此图片,则默认显示一张图片
    public string DispalyDefaultImages(string strimg)
    {
        
     if(strimg=="") return "";

     //****得到图片路径
     string strImagePath="";  strImagePath=ResolveUrl("uploadfileds/"+strimg);  //*****判断文件是否存在,如果不存在,则默认一张图片
     
    if(File.Exists(strImagePath)==false)
    {
    strImagePath="default.gif"; } return strImagePath.ToString(); }
      

  9.   

    我知道可以在模版列中加IMG控件,问题就是路径怎么取?难到要真的存数据库先吗?
      

  10.   

    我不是说的很明白了吗?连代码都贴出来了..你还看不明白吗?
    再详细说一下..
    string sql="select 'd:\\彩图\\'+ id + '.gif' as pic, id,type from pic
    'd:\\彩图\\'这里说的是你的图片在你的磁盘下的图径.你的是什么就改成相应的路径.
    + id +是数据库里相对应的ID.你最好把文件名给统一,跟数据里的ID字段相同.比如文件名是0001,数据表中ID字段就为0001这样统一的话.就不用把图片放入数据库中,
    '.gif' 是文件的后辍名..最好是统一..as pic是我新建的别名.用来存放图片的绝对路径的.当绑定图片的时候就搜索pic字段中的路径!
    还有什么不明白的!!!最好自己试验一下!!!!!!!!
      

  11.   

    NET Framework提供两个访问目录信息的类和两个访问文件信息的类,钥访问目录,可以使用Directory类,也可以使用DirectoryInfo类,对应于文件,也有File类和FileInfo类。这两个类之间的区别在于返回的信息和使用的方法不同。Directory和File类属于静态类,在使用时你不必创建实例,例如:要删除文件,可以File.Delete(filePath),要检测文件夹是否存在可以Directory.Exists(directoryPath)。而带Info的类在使用时必须先进行实例化,并在构造函数里指名文件名字或者目录名字,因此,删除文件可以用Dim myFile as File = New File(filePath),myFile.Delete()。这两个类都提供了得到一个文件夹下的所有文件或者某种扩展名的文件的方法,即GetFiles()。' --- Directory 例子 ----
    Dim files() as String = Directory.GetFiles(directoryPath[, optionalWildCard])' --- DirectoryInfo 例子 ----
    Dim myDir as DirectoryInfo = New DirectoryInfo(directoryPath)
    Dim fileInfos() as FileInfo = myDir.GetFiles([optionalWildCard])值得注意的是,两者返回的类型是不同的,一个是String类型的数组,另外一个是FileInfo类型的数组。下面就是绑定的方法:VB.NET<%@ Import Namespace="System.IO" %>
    <script language="VB" runat="server">
      Sub Page_Load(sender as Object, e as EventArgs)
        Dim dirInfo as New DirectoryInfo(Server.MapPath(""))    
        articleList.DataSource = dirInfo.GetFiles("*.aspx")
        articleList.DataBind()
      End Sub
    </script><asp:DataGrid runat="server" id="articleList" Font-Name="Verdana"
        AutoGenerateColumns="False" AlternatingItemStyle-BackColor="#eeeeee"
        HeaderStyle-BackColor="Navy" HeaderStyle-ForeColor="White"
        HeaderStyle-Font-Size="15pt" HeaderStyle-Font-Bold="True">
      <Columns>
        <asp:HyperLinkColumn DataNavigateUrlField="Name" DataTextField="Name" 
               HeaderText="文件名" />
        <asp:BoundColumn DataField="LastWriteTime" HeaderText="最后修改时间"
            ItemStyle-HorizontalAlign="Center" DataFormatString="{0:d}" />
        <asp:BoundColumn DataField="Length" HeaderText="文件大小"
    ItemStyle-HorizontalAlign="Right" 
    DataFormatString="{0:#,### 字节}" />
      </Columns>
    </asp:DataGrid>
      

  12.   

    恩,看楼上的终于符合我的要求了!
    to: xieyun9958() 
    您说的方法不好,还要查数据库,如果文件夹下边的文件路径存在数据库中的N个表中,呵呵,那就麻烦了