2014-03-13 38 views
2

我是這個堆棧溢出的新手,所以這是我的第一個問題。如何使返回語句在C#中打開wpf窗口

我做了一個return語句,所以如果這個驗證返回1,它會打開一個新的窗口,否則它將不會被打開。這裏是我的代碼:

private int UserPassValidation() 
    { 
     if (txtUserName.Equals("admin") && txtPassword.Equals("admin")) 
     { 
      return 1; 
     } 
     return 0; 
    } 

private void LOGIN_BUTTON_PreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e) 
    { 
     if (UserPassValidation() == 1) 
     { 
      try 
      { 
       WindowView objWindowView = new WindowView(); 
       objWindowView.ShowDialog(); 
      } 
      catch (System.Data.EntityException) 
      { 
       MessageBox.Show("Entity Exception", "Error!", MessageBoxButton.OK, MessageBoxImage.Error); 
      } 
     } 
     else 
     { 
      MessageBox.Show("..."); 
     } 
    } 

所以,有一個「用戶名和密碼驗證」並登錄按鈕。然後,我在txtusername上插入「admin」,在txtpassword上插入admin。

然後,當我點擊登錄按鈕,它不會被打開。我不知道爲什麼,但它應該被打開。

+2

嗨,歡迎來到SO。 :)檢查這是否有助於你。 - http://stackoverflow.com/questions/3468433/wpf-window-return-value – MusicLovingIndianGirl

+1

問題在哪裏? –

+1

我在帖子底部編輯了我的帖子 –

回答

1

Aaaahhhh,終於工作了!所以,這是我的解決方案:

if (txtUserName.Text == "admin" && txtPassword.Password.ToString() == "admin") 

對不起,我忘了告訴你,txtPassword是一個PasswordBox,但是,謝謝你們! :D

1

似乎您的比較在UserPassValidation方法中不正確。如果txtUserName是一個文本框,那麼你應該比較它的Text屬性。如..

if (txtUserName.Text == "admin" && txtPassword.Text == "admin") 
+0

它似乎工作,但txtPassword沒有「.Text」屬性,因爲txtPassword是一個PasswordBox,所以這是一個編譯錯誤。 –

+0

我在這裏給出了答案。 http://stackoverflow.com/questions/20186737/password-box-does-not-mask-my-password-wpf/20187687#20187687 –