private void Form2_Load(object sender, EventArgs e)
        {
            Form1 _启动窗体 = new Form1();
            _启动窗体.Show();// 先把启动窗体Show出来。
            Application.DoEvents();            System.Threading.Thread.Sleep(3000);//此处可用加载数据集、权限列表等代码代替!!
            _启动窗体.Close();//加载完数据集后,把启动窗体关掉。
        }VB。NET可通过项目属性,方便的设置启动窗体,但C#就要自己写一个了,试了一下这样是可以的(参见上图代码)。
一 新建一个项目,并增加二个窗体Form1,Form2   假定把Form1 做为启动窗体,而Form2是主窗体。在Form2的Load 事件中执行上述代码。即可实现启动窗体的效果。也无须用定时器控制启动窗体的存活时间。

解决方案 »

  1.   

    找到Program.cs文件
    找到Main方法
    修改这里
    Application.Run的参数为实例化你需要的启动窗体即可。
      

  2.   


    Program.cs里修改 
    Application.Run(New Form1()); 
    如从Form2启动 
    Application.Run(New Form2()); 
      

  3.   

    其实LZ说的是这个意思,是要SplashScreen的那种启动窗体的,如下面的代码FrmMain是主窗体,FrmSplashScreen就是启动窗体,就实现了VB.NET的功能。using System;
    using System.Windows.Forms;
    using Microsoft.VisualBasic.ApplicationServices;namespace Colorall
    {
        static class Program
        {
            /// <summary>
            /// 应用程序的主入口点。
            /// </summary>
            [STAThread]
            static void Main()
            {
                Application.EnableVisualStyles();
                Application.SetCompatibleTextRenderingDefault(false);
                
                My.Application.Run(new string[] { "" });
            }
        }
        class MyApplication : WindowsFormsApplicationBase
        {
            public MyApplication()
                : base(AuthenticationMode.Windows)
            {
                EnableVisualStyles = true;
                ShutdownStyle = ShutdownMode.AfterMainFormCloses;
            }        protected override void OnCreateMainForm()
            {
                MainForm = new FrmMain();
            }        protected override void OnCreateSplashScreen()
            {
                SplashScreen = new FrmSplashScreen();
            }
        }
        static class My
        {
            private static MyApplication _app=new MyApplication();
            public static MyApplication Application
            {
                get
                {
                    return _app;
                }
            }      
        }
    }
      

  4.   

    C#对.NET代码有更好的控制能力。Main()提供了程序的入口,你可以随心所欲控制程序从哪里开始。所以很多人反而不适应VB.NET那种。
      

  5.   

    程序需要启动窗体来“掩护”主窗体的加载啊,主窗体加载时要验证权限、设定可访问的菜单,获取系统参数等等。当然你的代码也能实现。还可以加上IF 来控制。
    if (lenth("美女")==4)
        Application.Run(New Form1());
    else 
        Application.Run(New Form2());