Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如果密码错误,请再次显示表单_C#_Winforms - Fatal编程技术网

C# 如果密码错误,请再次显示表单

C# 如果密码错误,请再次显示表单,c#,winforms,C#,Winforms,我有以下检查密码/登录和执行其他操作的代码: public virtual void run() { if (appInitializer!=null) { ISecurityManager securityManager = appInitializer.SecurityManager; if (securityManager!=null)

我有以下检查密码/登录和执行其他操作的代码:

public virtual void run()
        {
            if (appInitializer!=null)
            {
                ISecurityManager securityManager = appInitializer.SecurityManager;
                if (securityManager!=null)
                {                   
                    if (securityManager.DoLogin())
                    {
                        RegisterDefaultActionsGroup();
                        InitializePlugins(appInitializer.Plugins);
                        ActionsManager.Inst.ApplySecurity(securityManager, securityManager.CurrentUser);
                        mainForm = new MainForm();
                        mainForm.Text = appInitializer.ApplicationTitle;
                        if (appInitializer.ApplicationIcon != null)
                        {
                            mainForm.Icon = appInitializer.ApplicationIcon;
                        }
                        CorrectFormSizes(mainForm);
                        Context[Constants.MainForm] = mainForm;
                        MenuManager.Inst.FillMenu(DefaultGroups.MAIN_MENU, mainForm.MainMenu, ActionClick);
                        if(appInitializer.IsHaveToCreatePanelInfo) PanelInfoManager.Inst.FillInfo(mainForm);
                        if (appInitializer.IsHaveToCreateToolBar)
                        {
                            MenuManager.Inst.FillToolbar(DefaultGroups.MAIN_TOOLBAR, mainForm.MainToolStrip, ActionClick);                            
                        }
                        mainForm.MainToolStrip.Visible = mainForm.MainToolStrip.Items.Count > 0;
                        NotifyPluginsAboutShowing(appInitializer.Plugins);
                        Application.Run(mainForm);
                    }                    
                }
            }
        }
主要方法是
DoLogin
。如果返回true,则运行其他操作(填充菜单、创建工具栏和其他)。
问题是,如果用户输入错误的密码,则
DoLogin
返回false,应用程序将关闭。
我希望,如果用户输入了错误的密码,则再次运行
DoLogin
(方法的内部已创建表单)。
如何重写此代码以完成此任务?
谢谢

另外,
Run
是我自己的框架类的成员。Program.cs文件中包含以下代码:

static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);

            Framework framework = new Framework(new EArchiveInitializer());
            framework.run();
}
为什么不干脆
而(!securityManager.DoLogin()){}