| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 882 人关注过本帖
标题:关于Gridview显示图片问题
只看楼主 加入收藏
lbaichun
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2007-4-24
收藏
 问题点数:0 回复次数:1 
关于Gridview显示图片问题
我从数据库里取了两次数据,第一次取的是普通字段,第二次取的是图片
如下:
//显示所有商品信息


public DataSet AllProductTest()
{
String sql = "select name as 商品名称,outprice as 商品价格,unit as 生产厂家,createdate as 生产日期,desn as 详细介绍 from product";
db = new DataBase();
return db.ExecuteAllProduct(sql);
}
//显示商品图片



public SqlDataReader PictureTest()
{
String sql = "select name as 姓名, picturedata from product";
db = new DataBase();
return db.Executepicture(sql);
}

我的读图片:

//读取图片
public void picture()
{
int bufferSize = 101;
byte[] buffer = new byte[101];
long startLocation = 0;
long returnLength;
SqlDataReader dr = new OperationLogin().PictureTest();
if (dr.HasRows)
{
while (dr.Read())
{
startLocation = 0;
string path = Server.MapPath("~") + "\\image\\" + dr.GetString(0) + ".jpg";
if (!File.Exists(path))
{
FileStream fs = new FileStream(path, FileMode.OpenOrCreate, FileAccess.ReadWrite);
BinaryWriter bw = new BinaryWriter(fs);
returnLength = dr.GetBytes(1, startLocation, buffer, 0, bufferSize);
while (returnLength == bufferSize)
{
bw.Write(buffer);
bw.Flush();
startLocation += bufferSize;
returnLength = dr.GetBytes(1, startLocation, buffer, 0, bufferSize);
}
bw.Write(buffer, 0, (int)(returnLength - 1));
bw.Flush();
}
}
dr.Close();
}
}

图片可以取到本地来,但是就是有时候有的不能显示;
我在Gridview里绑定:
<Columns>
<asp:BoundField DataField="商品名称" HeaderText="商品名称" ReadOnly="True" />
<asp:BoundField DataField="商品价格" HeaderText="商品价格" ReadOnly="True" />
<asp:BoundField DataField="生产厂家" HeaderText="生产厂家" ReadOnly="True" />
<asp:BoundField DataField="生产日期" HeaderText="生产日期" ReadOnly="True" />
<asp:BoundField DataField="详细介绍" HeaderText="详细介绍" ReadOnly="True" />
<asp:TemplateField>
<ItemTemplate>
<asp:Image width="100" height="150" ID="image" src='image\<%#Eval("姓名") %>.jpg' runat="server" />
</ItemTemplate>
</asp:TemplateField>
</Columns>

可是不显示呀!
谢谢大家了!



搜索更多相关主题的帖子: Gridview 
2007-11-03 10:24
冰彩虹
Rank: 4
来 自:上海
等 级:贵宾
威 望:14
帖 子:806
专家分:44
注 册:2007-6-28
收藏
得分:0 
你可以把picture()放在另一个页面的Page_Load里(LoadPic.aspx),然后设置Image的scr属性

<asp:Image width="100" height="150" ID="image" src='LoadPic.aspx' runat="server" />

试试看

Flying without wings
2007-11-03 11:21
快速回复:关于Gridview显示图片问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016238 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved