我有预订申请,所以当您按保存时,它会要求输入用户名和密码,如果用户名和密码正确,则会保存预订。但是,当它打开新窗口并且新窗口关闭时,它不会继续保存,如何在窗口关闭后进行保存?
这是保存按钮的代码。
private void btnSave_Click(object sender, RoutedEventArgs e)
{
if (CheckClashes(Convert.ToDateTime(date_picker.SelectedDate)) == false)
{
// tries to see if validation is ok
if (validate() == true)
{
var openLogin = new Login1();
openLogin.Show();
if (variables.login == true)
{
//do save algorithm
以下是检查用户用户名和密码时新窗口的代码。
private void submit_Click(object sender, RoutedEventArgs e)
{
if (Validate() == true)
{
try
{
//authenticates user here
if (hash1 == existingpassword.ToString())
{
variables.login = true;
MessageBox.Show("User accepted.");
this.Close();
}
else
{
MessageBox.Show("Incorrect username or password.");
variables.login = false;
}
答案 0 :(得分:1)
将openLogin.Show()
替换为openLogin.ShowDialog()
。
这将阻止调用线程,直到Login窗口关闭。
答案 1 :(得分:1)
我认为更好的方法是在模态模式下显示表单,如下所示:
openLogin.ShowDialog();
if (openLogin.DialogResult == DialogResult.OK)
{
//save here
}