惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

WordPress大学
WordPress大学
GbyAI
GbyAI
P
Proofpoint News Feed
B
Blog
MyScale Blog
MyScale Blog
V
V2EX
B
Blog RSS Feed
Microsoft Security Blog
Microsoft Security Blog
量子位
Jina AI
Jina AI
博客园 - 叶小钗
Recent Announcements
Recent Announcements
有赞技术团队
有赞技术团队
罗磊的独立博客
L
LangChain Blog
I
InfoQ
云风的 BLOG
云风的 BLOG
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
人人都是产品经理
人人都是产品经理
小众软件
小众软件
V
Visual Studio Blog
月光博客
月光博客
The Cloudflare Blog
雷峰网
雷峰网

博客园 - 芸

N×N矩阵螺旋打印输出 数组int[],int[,]的区别 转载 使用ActiveReport for .net 进行报表开发 oracle数据库之间的数据拷贝 VS2003 水晶报表服务器端部署 SQL操作全集 合并多行的字符串—oarcle(转) 在网页上使用户按Enter键自动跳到下一控件,并禁止使用鼠标右键和其他快捷键的HTC控件 字符串样式的格式化 oracle 存储过程的基本语法 2007年终总结 主从表XtarGrid设计 JavaScript面向对象 dotNet常用快捷键 最美的十大经典爱情句子 自定义控件脚本校验 在DataGrid中使用单选框 ActiveReport子报表 正则表达式收藏
Xtragrid的图片显示
· 2011-07-29 · via 博客园 - 芸

   Xtragrid表格的图片显示,用的控件是repositoryItemPictureEdit 。他只能用System.Byte[]来显示图片。

   添加图片列            ds.Tables[0].Columns.Add("PICTURE", typeof(System.Object));

   for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
            {
                dr = ds.Tables[0].Rows[i];
       dr["PICTURE"] = this.GetImage(dr["PATH"].ToString().Trim());
            }

            gridControl1.DataSource = ds.Tables[0];  //绑定到gridControl1当中 在gridControl1 中

//根据URL路径获取图片
    private byte[] GetImage(string strPath)
        {
            Image obj = Image.FromStream(System.Net.WebRequest.Create(strPath).GetResponse().GetResponseStream());
            byte[] bt = ImageToByteArray(obj);  //使用ImageToByteArray()函数 将Image类型转成Byte[]类型
            obj.Dispose();
            return bt;           
        }

        /// <summary>
        /// 根据image获取图片的字节
        /// </summary>
        /// <param name="image"></param>
        /// <returns></returns>
        private byte[] ImageToByteArray(Image image)
        {
            System.IO.MemoryStream mStream = new System.IO.MemoryStream();
            image.Save(mStream, System.Drawing.Imaging.ImageFormat.Png);
            byte[] ret = mStream.ToArray();
            mStream.Close();
            return ret;
        }