首页  ·  知识 ·  编程语言
VS2010水晶报表的使用
owenyep  博客园  .NET  编辑:沅铱   图片来源:网络
在VS2010中新建一个“Windows窗体应用程序”项目,在该项目中添加一个水晶报表“CrystalReport1.rpt”,然后在项目上点击鼠标右键属性,将“目标框架”改为“.NetFramework4”

在VS2010中新建一个“Windows 窗体应用程序”项目,在该项目中添加一个水晶报表“CrystalReport1.rpt”,然后在项目上点击鼠标右键属性,将“目标框架”改为“.Net Framework 4”


blob.png

打开app.config文件,在“startup”节点一个“useLegacyV2RuntimeActivationPolicy="true"”属性

<startup useLegacyV2RuntimeActivationPolicy="true">
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>

在Form1窗体中,从工具箱拖出一个Crystal Report Viewer控件,双击Form窗体,是双击Form窗体,不是Crystal Report Viewer,在后台的Form_Load事件中写入如下代码:


private void Form1_Load(object sender, EventArgs e)

        {

            string connStr = "Data Source=.\\SqlExpress;Initial Catalog=dbTest;User ID=sa;Password=test";

            SqlConnection conn = new SqlConnection(connStr);

            conn.Open();

            try

            {

                string sql = "SELECT * FROM Customer where email!='test@gmail.com'";

                SqlDataAdapter sda = new SqlDataAdapter(sql, conn);

                DataSet ds = new DataSet();

                sda.Fill(ds, "tmpTable");


                string reportPath = System.Windows.Forms.Application.StartupPath + @"\CrystalReport1.rpt";

                ReportDocument rd = new ReportDocument();

                rd.Load(reportPath);

                rd.SetDataSource(ds.Tables[0].DefaultView);

                this.crystalReportViewer1.ReportSource = rd;

            }

            catch (Exception ex)

            {

                throw new Exception(ex.Message.ToString());

            }

            finally

            {

                conn.Close();

            }

        }



这样就OK了

blob.png

本文作者:owenyep 来源:博客园
CIO之家 www.ciozj.com 微信公众号:imciow
    >>频道首页  >>网站首页   纠错  >>投诉
版权声明:CIO之家尊重行业规范,每篇文章都注明有明确的作者和来源;CIO之家的原创文章,请转载时务必注明文章作者和来源;
延伸阅读