请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册

QQ登录

只需一步,快速开始

Andy_Uncle

注册会员

1

主题

1

帖子

8

积分

注册会员

积分
8
最新发帖
Andy_Uncle
注册会员   /  发表于:2016-12-2 11:28  /   查看:4440  /  回复:2
本帖最后由 Andy_Uncle 于 2016-12-2 12:01 编辑

1、需求:在Active Report中实现图片打印,如产品资料中的图片,职员信息中的图片等。

2、实现方法:
将以下代码请复制放置到报表配置容器中,如下图:



代码如下:
/// <summary>
/// 绑定图片
/// </summary>
///<param name="pic">icture对象,用于显示图片</param>
///<param name="hiddenControl">隐藏域对象,用于绑定图片的路径,以间接实现显示图片</param>
/// <returns></returns>
public void BindPicture(GrapeCity.ActiveReports.SectionReportModel.Picture pic,
        GrapeCity.ActiveReports.SectionReportModel.TextBox hiddenControl)
{
        pic.Image = null;
        string fileURL = string.Empty;
        try
        {
                fileURL = hiddenControl.Value.ToString();
        }
        catch
        {

        }
        if(string.IsNullOrEmpty(fileURL))
        {
                return;
        }

        System.IO.Stream stream = GetStreamFromURL(fileURL);
        if (stream == null)
        {
                return;
        }
        pic.Image = System.Drawing.Image.FromStream(stream);

        //释放资源
        try
        {
                if(stream != null)
                {
                        stream.Close();
                }
        }
        catch
        {

        }
}

/// <summary>
/// 得到图片流
/// </summary>
/// <param name="picURL">图片URL</param>
/// <returns></returns>
public System.IO.Stream GetStreamFromURL(string picURL)
{
        if(string.IsNullOrEmpty(picURL))
        {
                return null;
        }
        System.Net.WebResponse response = null;
        System.IO.Stream stream = null;
        try
        {
                System.Net.HttpWebRequest request = (System.Net.HttpWebRequest) System.Net.WebRequest.Create(picURL);
                response = request.GetResponse();
                stream = response.GetResponseStream();
        }
        catch
        {

        }
        return stream;
}



public void 明细_Format()
{
        //绑定产品图片
        //this.Picture1 图片控件ID
        //this.TextBox2 图片路径ID
        BindPicture(this.Picture1, this.TextBox2);
}


备注说明:

//this.Picture1 图片控件ID
//this.TextBox2 图片路径ID
这两个根据实际情况替换即可。





3、调试效果


到此配置完成。





本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

2 个回复

倒序浏览
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2016-12-2 11:29:58
沙发
回复 使用道具 举报
Lenka.Guo讲师达人认证 悬赏达人认证
超级版主   /  发表于:2016-12-2 11:34:22
板凳
本帖最后由 Lenka.Guo 于 2016-12-2 11:38 编辑


奖励10000金币~~

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部