C# 系统异常';发生在PresentationFramework.dll中

C# 系统异常';发生在PresentationFramework.dll中,c#,crystal-reports,business-objects,C#,Crystal Reports,Business Objects,当我试图打印crystal报告时,会显示此错误 PresentationFramework.dll中发生System.ArgumentNullException“” 我正在尝试构建一个WPF应用程序, 我在另一种形式中使用了相同的代码,它在那里工作得很好。 但在这个页面上显示错误 private void btnReciept_Click(object sender, RoutedEventArgs e) { try { if (txtComplainNo.Text ==

当我试图打印crystal报告时,会显示此错误

PresentationFramework.dll中发生System.ArgumentNullException“”

我正在尝试构建一个
WPF
应用程序, 我在另一种形式中使用了相同的代码,它在那里工作得很好。 但在这个页面上显示错误

private void btnReciept_Click(object sender, RoutedEventArgs e)
{
    try {
        if (txtComplainNo.Text == "")
        {
            ModernDialog.ShowMessage("Enter Complain Number","ErrorFound", MessageBoxButton.OK);
        }
        else
        {
            InsertFinalReport();
            var ConString = System.Configuration.ConfigurationManager.ConnectionStrings["GalaxyApp.Properties.Settings.ConnString"].ConnectionString;
            string CmdString = string.Empty;
            SqlCommand cmd = new SqlCommand();
            SqlDataAdapter MyDA = new SqlDataAdapter();
            DataSet myDS = new DataSet(); 
            // DataSet1 myDS = new DataSet1();
            SqlConnection con = new SqlConnection(ConString);
            cmd.Connection = con;
            cmd.CommandText = "Select * from FinalReport where ComplainNo='" + Convert.ToInt32(txtComplainNo.Text) + "'";
            cmd.CommandType = System.Data.CommandType.Text;
            MyDA.SelectCommand = cmd;
            MyDA.Fill(myDS, "FinalReport");
            // FinalReportDS myDS = new FinalReportDS();
            // myDS.EnforceConstraints=false;
            if (myDS.Tables[0].Rows.Count == 0)
            {
                ModernDialog.ShowMessage("EmptyDataSet", "ErrorFound", MessageBoxButton.OK);
            }
            else
            {
                CourierReport1 rpt = new CourierReport1();
                rpt.SetDataSource(myDS);
                FinalReportViewer FRV = new FinalReportViewer();
                FRV.ReportViewer.ViewerCore.ReportSource = rpt;
                FRV.Show();
            }
            //Report frm1 = new Report();
            //frm1.ReportViewer1.ViewerCore.ReportSource = rpt;
            //frm1.Show();
            ///*
            //Form1 mform = new Form1();
            //mform.ShowReport(Convert.ToInt32(txtComplainNo.Text));
            //mform.Show();
            //*/
        }
    }
    catch(Exception ex)
    {
        ModernDialog.ShowMessage(ex.Message, "ErrorFound", MessageBoxButton.OK);
    }
}
我尝试了所有的替代代码。 请任何人都可以帮助我找到这个错误的原因

堆栈跟踪:

   at System.Windows.Interop.WindowInteropHelper..ctor(Window window)
   at System.Windows.MessageBox.Show(Window owner, String messageBoxText, String caption, MessageBoxButton button, MessageBoxImage icon)
   at SAPBusinessObjects.WPF.Viewer.ViewerCore.HandleExceptionEvent(Object eventSource, Exception e, Boolean suppressMessage)
   at SAPBusinessObjects.WPF.Viewer.ReportAlbum.OnHandleException(Exception e)
   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   at System.Windows.Threading.DispatcherOperation.InvokeImpl()
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at MS.Internal.CulturePreservingExecutionContext.Run(CulturePreservingExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Windows.Threading.DispatcherOperation.Invoke()
   at System.Windows.Threading.Dispatcher.ProcessQueue()
   at System.Windows.Threading.Dispatcher.WndProcHook(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
   at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
   at MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
   at System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
   at System.Windows.Application.RunDispatcher(Object ignore)
   at System.Windows.Application.RunInternal(Window window)
   at GalaxyApp.App.Main() in D:\GoogleDrive\extra\GalaxyApp\GalaxyApp\obj\Debug\App.g.cs:line 0
   at System.AppDomain._nExecuteAssembly(RuntimeAssembly assembly, String[] args)
   at System.Runtime.Hosting.ApplicationActivator.CreateInstance(ActivationContext activationContext, String[] activationCustomData)
   at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssemblyDebugInZone()
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.ThreadHelper.ThreadStart()
Stack Trace:

在某些情况下,CrystalReports中没有显示任何有用的异常细节,这是一个小小的“缺陷”。我最近也遇到过

这个问题很难找到,因为例外基本上什么都没有说。。。问题也可能出现在报告中,而不是代码本身。
不幸的是,如果报告有任何问题,您必须调试并检查报告

检查所有详细信息。
检查已使用的DB表和列


我有一个问题,子报表有几个参数,父报表也有。但这些并没有自动传递到子报表。有必要向报告提供所有必需的参数。也许这对你也有帮助。遗憾的是,没有报告、代码和环境很难说。

特别感谢@Blacktempe让我将这个问题标记为crystal report的每一个人,我从这个帖子中找到了答案?

请发布所有异常详细信息。您正在将null传递给某个函数或构造函数。我已经发布了图片,您也可以查看that@SudhirSolka这是水晶报告吗?看起来是这样的,如果是这样,请在你的问题中添加标签。@Blacktempel我将其标记为crystal reportsalso@SudhirSolka对问题的评论并不表示此人能够帮助解决您的具体问题。在这种情况下,它会帮助那些试图帮助你的人。