private void ReportParameters_Resolve(object sender, ResolvableEventArgs<string, ReportParameter> args)
        {
            // Prompt the consumer first

            var reportParameterElement =
                ReportElement.ReportParameters.First(rp => rp.Name.SafeEqualsIgnoreCase(args.ResolvingKey));

            args.ResolvedItem = LocalReportsEngineCommon.ElementToObject(reportParameterElement, this);
            args.IsResolved = true;
        }
        private void DataSources_Resolve(object sender, ResolvableEventArgs<string, IResolvedDataSource> args)
        {
            // Prompt the user first

            var dataSourceElement =
                ReportElement.DataSources.First(ds => ds.Name.SafeEqualsIgnoreCase(args.ResolvingKey));

            args.ResolvedItem = LocalReportsEngineCommon.ElementToObject(dataSourceElement, this);
            args.IsResolved = true;

            // We need to kick off this event, if the ds was resolved while the report was being refreshed
            if (IsReportRefreshing)
                args.ResolvedItem.OnReportRefreshing();
        }