0
我正在申請,我有2個表單。主窗體(主應用程序)和登錄窗體將啓動。如果用戶有一個API密鑰,它會檢查,如果它是正確的,它應該隱藏登錄表單並顯示主窗體。如果不正確或者用戶完全沒有api密鑰,則應該繼續顯示登錄表單,如果登錄詳細信息是正確的,則應該隱藏登錄表單並顯示主表單。C#表單不隱藏
如果我登錄並且我的詳細信息是正確的,登錄窗口將被隱藏並顯示主窗體,但是,如果我有API密鑰並且它是正確的,它不會隱藏登錄窗體。
這是當我的登錄信息是正確的:
case "True":
string apiToken = subparts[0];
RegistryKey key = Registry.CurrentUser.CreateSubKey("Prtscreen");
key.SetValue("API_TOKEN", subparts[0]);
key.Close();
MessageBox.Show("Logged in as " + username.Text);
UserDetails.UserName = username.Text;
UserDetails.APIKey = subparts[0];
this.Hide();
new MainForm().Show();
break;
會發生什麼:我的信息是正確的,登錄窗口「消失」和主要形式顯示。現在這是當我有一個API密鑰,它是正確的:
UserDetails.UserName = result.Split('|')[1];
UserDetails.APIKey = value.ToString();
this.Hide();
Program.MainForm = new MainForm();
Program.MainForm.Show();
return true;
但由於某種原因,它不會隱藏登錄窗口。這兩個代碼都在登錄表單代碼文件中。我不知道有什麼不同。
你能告訴我們更多的代碼嗎,很難看到這裏發生了什麼。我們似乎在切換案例陳述中? – KingCronus
這只是關於顯示和隱藏不工作的窗體。上述兩個代碼都具有相同的代碼(用於顯示和隱藏,至少隱藏),但對於第二個代碼,它不會隱藏登錄表單,而在第一個代碼中卻是這樣。 –
那麼,爲什麼每次都以不同的方式創建Show()代碼呢?程序的使用必須具有一定的意義。此外,這是否發生在Form_Load? – KingCronus