在GridView里怎么显示图片啊

a____z 2014-10-07 04:16:39
如题 还有在页面里怎么显示啊 数据库查出来的流数据转成bitmap但是说类型 哪类型怎么转 Drawing的image与web控件的image类型也不一样强转也不对 求解啊
...全文
683 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
ggeohox 2014-10-13
  • 打赏
  • 举报
回复
http://blog.csdn.net/2004v2004/article/details/4189017
a____z 2014-10-13
  • 打赏
  • 举报
回复
引用 8 楼 eew_1679694743 的回复:
GridView实现商品信息图片明细示例 //GridView设置显示图片详细信息 <asp:GridView ID="gvOrder" runat="server" AutoGenerateColumns="False" AllowPaging="True" PageSize="1" CellPadding="3" OnPageIndexChanging="gvOrder_PageIndexChanging" onrowdatabound="gvOrder_RowDataBound" BackColor="#DEBA84" BorderColor="#DEBA84" BorderStyle="None" BorderWidth="1px" CellSpacing="2"> <PagerStyle HorizontalAlign="Center" ForeColor="#8C4510" /> <Columns> <asp:BoundField DataField="GoodsTypeName" HeaderText="商品类别" /> <asp:BoundField DataField="StoreID" HeaderText="库存编号" /> <asp:BoundField DataField="OrderTime" HeaderText="订单日期" DataFormatString="{0:d}" /> <asp:TemplateField HeaderText="商品明细"> <ItemTemplate> <table> <tr> <td style="text-align: left"> <%-- <b>商品类别ID:<%# DataBinder.Eval(Container.DataItem,"GoodsTypeID")%></b>--%> </td> </tr> <tr> <td> <asp:GridView ID="gvDetail" runat="server" AutoGenerateColumns="False" DataMember="GoodsTypeID" EmptyDataText="暂无商品明细!"> <Columns> <asp:BoundField DataField="GoodsName" HeaderText="商品名称" /> <asp:BoundField DataField="GoodsIntroduce" HeaderText="商品介绍" /> <asp:BoundField DataField="GoodsPrice" HeaderText="商品价格" /> <asp:BoundField DataField="GoodsIsNew" HeaderText="是否推荐" /> <asp:TemplateField HeaderText="商品图像"> <ItemTemplate> <asp:Image id="ProductImage" ImageUrl='<%# Eval( "GoodsPhoto") %>' runat="server"/> </ItemTemplate> </asp:TemplateField> </Columns> </asp:GridView> //获取主表中数据 private DataTable GetOrders() { string strSql = "select * from tb_GoodsType"; return GetDataBySql(strSql); } //获取明细表中数据 private DataTable GetDetailGoods(string detailgoodsid ){ string strsql = "select * from tb_GoodsInfo1 where GoodsTypeID=" + detailgoodsid; return GetDataBySql(strsql); } //根据传递的SQL语句将查询表存储到内存表中 private DataTable GetDataBySql(string strSql){ string strCon = ConfigurationManager.AppSettings["conStr"]; SqlConnection conn=new SqlConnection(strCon);//创建数据连接对象 SqlDataAdapter da = new SqlDataAdapter(strSql, conn);//创建数据适配器 DataTable dt = new DataTable();//创建内存表 da.Fill(dt);//填充内存表 return dt; } //绑定数据显示 protected void gvOrder_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow)//判断当前操作的是否是数据行 { GridView gvGoodsDetail = e.Row.FindControl("gvDetail") as GridView;//FindControl查找嵌套的GridView控件 if (gvGoodsDetail != null)//判断显示商品明细的GridView数据是否为空 { //根据获取的主表中当前行(e.Row.RowIndex)索引查找该商品订单的明细表(次表) gvGoodsDetail.DataSource = GetDetailGoods(gvOrder.DataKeys[e.Row.RowIndex].Value.ToString()); gvGoodsDetail.DataBind(); }//CodeGo.net/ } } //显示标题索引 protected void gvOrder_PageIndexChanging(object sender, GridViewPageEventArgs e) { gvOrder.PageIndex = e.NewPageIndex; this.gvOrder.DataSource = GetOrders(); this.gvOrder.DataKeyNames = new string[] { "GoodsTypeID" }; this.gvOrder.DataBind(); }
不是存储的路径 是图片流
eew_1679694743 2014-10-11
  • 打赏
  • 举报
回复
GridView实现商品信息图片明细示例 //GridView设置显示图片详细信息 <asp:GridView ID="gvOrder" runat="server" AutoGenerateColumns="False" AllowPaging="True" PageSize="1" CellPadding="3" OnPageIndexChanging="gvOrder_PageIndexChanging" onrowdatabound="gvOrder_RowDataBound" BackColor="#DEBA84" BorderColor="#DEBA84" BorderStyle="None" BorderWidth="1px" CellSpacing="2"> <PagerStyle HorizontalAlign="Center" ForeColor="#8C4510" /> <Columns> <asp:BoundField DataField="GoodsTypeName" HeaderText="商品类别" /> <asp:BoundField DataField="StoreID" HeaderText="库存编号" /> <asp:BoundField DataField="OrderTime" HeaderText="订单日期" DataFormatString="{0:d}" /> <asp:TemplateField HeaderText="商品明细"> <ItemTemplate> <table> <tr> <td style="text-align: left"> <%-- <b>商品类别ID:<%# DataBinder.Eval(Container.DataItem,"GoodsTypeID")%></b>--%> </td> </tr> <tr> <td> <asp:GridView ID="gvDetail" runat="server" AutoGenerateColumns="False" DataMember="GoodsTypeID" EmptyDataText="暂无商品明细!"> <Columns> <asp:BoundField DataField="GoodsName" HeaderText="商品名称" /> <asp:BoundField DataField="GoodsIntroduce" HeaderText="商品介绍" /> <asp:BoundField DataField="GoodsPrice" HeaderText="商品价格" /> <asp:BoundField DataField="GoodsIsNew" HeaderText="是否推荐" /> <asp:TemplateField HeaderText="商品图像"> <ItemTemplate> <asp:Image id="ProductImage" ImageUrl='<%# Eval( "GoodsPhoto") %>' runat="server"/> </ItemTemplate> </asp:TemplateField> </Columns> </asp:GridView> //获取主表中数据 private DataTable GetOrders() { string strSql = "select * from tb_GoodsType"; return GetDataBySql(strSql); } //获取明细表中数据 private DataTable GetDetailGoods(string detailgoodsid ){ string strsql = "select * from tb_GoodsInfo1 where GoodsTypeID=" + detailgoodsid; return GetDataBySql(strsql); } //根据传递的SQL语句将查询表存储到内存表中 private DataTable GetDataBySql(string strSql){ string strCon = ConfigurationManager.AppSettings["conStr"]; SqlConnection conn=new SqlConnection(strCon);//创建数据连接对象 SqlDataAdapter da = new SqlDataAdapter(strSql, conn);//创建数据适配器 DataTable dt = new DataTable();//创建内存表 da.Fill(dt);//填充内存表 return dt; } //绑定数据显示 protected void gvOrder_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow)//判断当前操作的是否是数据行 { GridView gvGoodsDetail = e.Row.FindControl("gvDetail") as GridView;//FindControl查找嵌套的GridView控件 if (gvGoodsDetail != null)//判断显示商品明细的GridView数据是否为空 { //根据获取的主表中当前行(e.Row.RowIndex)索引查找该商品订单的明细表(次表) gvGoodsDetail.DataSource = GetDetailGoods(gvOrder.DataKeys[e.Row.RowIndex].Value.ToString()); gvGoodsDetail.DataBind(); }//CodeGo.net/ } } //显示标题索引 protected void gvOrder_PageIndexChanging(object sender, GridViewPageEventArgs e) { gvOrder.PageIndex = e.NewPageIndex; this.gvOrder.DataSource = GetOrders(); this.gvOrder.DataKeyNames = new string[] { "GoodsTypeID" }; this.gvOrder.DataBind(); }
a____z 2014-10-10
  • 打赏
  • 举报
回复
引用 5 楼 tianlongfeifei 的回复:
数据类型不一样吧!
哪怎么弄啊
a____z 2014-10-10
  • 打赏
  • 举报
回复
 string strCatID = context.Request.QueryString["strCatID"];
            byte[] imagebytes = null;
            string str = string.Format("select img from Customer where id={0}", strCatID);
            SqlDataReader dr = DBHelper.GetReader(str);
            while (dr.Read())
            {
                string liu = dr.GetValue(0).ToString();
                imagebytes = System.Text.Encoding.Default.GetBytes(liu);
                imagebytes =Convert.(dr.GetValue(0));
            }
            MemoryStream ms = new MemoryStream(imagebytes);
            // Bitmap bmpt = Bitmap.FromStream(ms);
            Image img = Image.FromStream(ms);
            img.Save(context.Response.OutputStream, ImageFormat.Jpeg);
            context.Response.ContentType = "image/jpeg";
            dr.Close();
所有代码了 图片在数据库存储类型是nvarchar 求解答 ms参数无效
  • 打赏
  • 举报
回复
数据类型不一样吧!
a____z 2014-10-08
  • 打赏
  • 举报
回复
上面那个看不太明白 数据库图片存储类型是nvarchar类型的 byte[] imagebytes = null; MemoryStream ms = new MemoryStream(imagebytes); Bitmap bmpt = Bitmap.FromStream(ms); imagebytes ms 都获取到值了 但是ms做bmpt参数时 就说参数无效 求解啊
insus 2014-10-08
  • 打赏
  • 举报
回复
与图片相关的,找一找: http://zzk.cnblogs.com/s?w=blog%3Ainsus+%E5%9B%BE%E7%89%87&t= 实现一个功能,是需要很多关的小功能组合起来的。
a____z 2014-10-07
  • 打赏
  • 举报
回复
对了谁能给个权限的例子最好数据库代码都有的

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧