我有一个报表名称列表,在 ReportViewer 控件中显示为树层次结构。当用户单击报告名称时,会加载一个输入表单,用户输入一些值并按 OK。此时,启动屏幕应该在后端进程发生时加载(连接到数据库、检索值等)。在 Reportviewer 编辑器中加载报告后,启动画面应关闭。
到目前为止,我可以显示启动画面,但是它会卡在那个点上,实际报告不会加载,并且启动画面会永远保持打开状态。
是否可以在应用程序中间使用闪屏,而不是在应用程序启动时?如果是这样,我该如何继续加载报告?
static class Program
{
[STAThread]
static void Main(string[] args)
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new SnapPlusReports());
//new SplashScreenApp().Run(args);
}
}
public class SplashScreenApp : WindowsFormsApplicationBase
{
private static SplashScreenApp _application;
public static void Run(Form form)
{
_application = new SplashScreenApp { MainForm = form };
_application.Run(Environment.GetCommandLineArgs());
}
protected override void OnCreateSplashScreen()
{
this.SplashScreen = new ShowProgress();
base.OnCreateSplashScreen();
}
}