내 로그인 양식의로드 윈도우를 만들었고 BackgroundWorker를 사용하여 부드러운 로딩 애니메이션을 만들었지 만 ShowDialog()
insted가 Show()
인 경우로드 창이 화면에 남아 있고 프로그램 아무것도하지 않는다. 이 문제의 원인은 무엇입니까? 여기BackgroundWorker를 사용하여 요청이 완료되지 않는 것 같습니다.
나는 BackgroundWorker에 호출하고 난로드 페이지 보여
private void LoginBV_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e) {
loadscr.Close();
//and show the MainWindow, etc.
}
DoWork (BackgroundWorker에) 코드 :
private void LoginBV_DoWork(object sender, DoWorkEventArgs e) {
NameValueCollection POST = new NameValueCollection();
POST["username"] = ipbUN.Text;
POST["password"] = ipbPASS.Text;
POST["pin"] = ipbPIN.Text;
POST["csoport"] = "user";
var action = Program.startPOST<DataObj>("http://localhost/system/winapi.php?do=userlogin", POST);
finish["sessionkey"] = action.sessionkey;
finish["status"] = Convert.ToString(action.status);
}
private void loginButton_Click(object sender, EventArgs e) {
loadscr.Show();
LoginBV.RunWorkerAsync();
}
여기에 내가로드 창을 닫으을
실제로, 나는 2 줄을 바꿨다. 이제는 잘 작동한다. 고마워. – mbalint987