找回密码
 立即注册

QQ登录

只需一步,快速开始

昀迅昊

注册会员

17

主题

58

帖子

167

积分

注册会员

积分
167
昀迅昊
注册会员   /  发表于:2021-11-16 16:00  /   查看:2758  /  回复:11
本帖最后由 Crystal.Li 于 2021-11-23 17:21 编辑

多个DataSet 如何在这里赋值?
void Document_LocateDataSource(object sender, GrapeCity.ActiveReports.LocateDataSourceEventArgs args)
        {
            args.Data = ((DataSet)rs);
        }


        private void tsbtnQry_Click(object sender, EventArgs e)
        {
            GrapeCity.ActiveReports.PageReport report = new GrapeCity.ActiveReports.PageReport(new System.IO.FileInfo(System.Environment.CurrentDirectory + ReportPath));
            GrapeCity.ActiveReports.Document.PageDocument document = new GrapeCity.ActiveReports.Document.PageDocument(report);
            document.LocateDataSource += new GrapeCity.ActiveReports.LocateDataSourceEventHandler(Document_LocateDataSource);
            for (int i = 0; i < Parameters.Count; i++)
            {
                if(document.Parameters[((structReportsParameters)Parameters).ParametersID] != null)
                {
                    document.Parameters[((structReportsParameters)Parameters).ParametersID].CurrentValue = ((structReportsParameters)Parameters).ParametersValue;
                }
            }
            viewer2.LoadDocument(document);
        }

11 个回复

倒序浏览
Crystal.Li讲师达人认证 悬赏达人认证
论坛元老   /  发表于:2021-11-16 17:45:05
沙发
您好,您可以写if判断,判断数据集的名称绑定,参考博客:
JS Viewer 如何绑定动态数据源
https://gcdn.grapecity.com.cn/fo ... 3&fromuid=59070
(出处: 葡萄城产品技术社区)


本帖子中包含更多资源

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

x
回复 使用道具 举报
昀迅昊
注册会员   /  发表于:2021-11-16 17:53:57
板凳
本帖最后由 昀迅昊 于 2021-11-16 17:55 编辑

谢谢,我试试
回复 使用道具 举报
Crystal.Li讲师达人认证 悬赏达人认证
论坛元老   /  发表于:2021-11-17 09:13:13
地板
回复 使用道具 举报
昀迅昊
注册会员   /  发表于:2021-11-22 15:51:13
5#
void Document_LocateDataSource(object sender, GrapeCity.ActiveReports.LocateDataSourceEventArgs args)
        {
            args.Data = ((DataSet)rs);
        }
这里没办法赋值两个甚至多个Dataset嘛?
回复 使用道具 举报
Crystal.Li讲师达人认证 悬赏达人认证
论坛元老   /  发表于:2021-11-22 17:28:48
6#
昀迅昊 发表于 2021-11-22 15:51
void Document_LocateDataSource(object sender, GrapeCity.ActiveReports.LocateDataSourceEventArgs args ...

您好,多个数据集的赋值如第一条回复所说,需要通过if判断数据集名称具体去赋值:

本帖子中包含更多资源

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

x

评分

参与人数 1满意度 +5 收起 理由
昀迅昊 + 5

查看全部评分

回复 使用道具 举报
昀迅昊
注册会员   /  发表于:2021-11-23 14:43:45
7#
本帖最后由 昀迅昊 于 2021-11-23 15:04 编辑

可以了
回复 使用道具 举报
Crystal.Li讲师达人认证 悬赏达人认证
论坛元老   /  发表于:2021-11-23 17:21:24
8#
回复 使用道具 举报
昀迅昊
注册会员   /  发表于:2021-11-29 15:04:44
9#
本帖最后由 昀迅昊 于 2021-11-29 15:21 编辑

        void Document_LocateDataSource(object sender, GrapeCity.ActiveReports.LocateDataSourceEventArgs args)
        {  

            string DataSetName = "DataSet1";
            MyArrayList rsList = new MyArrayList();
            GetRs(ref rsList);
            DataSet[] DsCunt = new DataSet[args.Report.DataSets.Count];
            GrapeCity.ActiveReports.PageReportModel.DataSet dataSet = new GrapeCity.ActiveReports.PageReportModel.DataSet();
            for (int i = 0; i < args.Report.DataSets.Count; i++)
            {
                DataSetName = ((GrapeCity.ActiveReports.PageReportModel.DataSet)args.Report.DataSets).Name;
                DsCunt = (DataSet)rsList[DataSetName];
            }
            args.Data = DsCunt;

        }
回复 使用道具 举报
昀迅昊
注册会员   /  发表于:2021-11-29 15:07:23
10#
我现在有3个 DataSet1,DataSet2,DataSet3,需要赋值到args.Data里面,模板里面已经定义了3个数据集
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部