Я создаю приложение в Silverlight 4. Первый экран, с которым пользователь вступает в контакт, - это экран входа (Login.xaml). Я написал следующий код в файле Login.xaml.cs.Silverlight 4 Asynchronous Issue
private void btnSubmit_Click(object sender, RoutedEventArgs e)
{
//first validate if the user is authorised for this application
if (this.ValidateEntry())
{
if (UserAuthenticationBL.AuthenticateUser(txtUserName.Text.Trim(), txtPassword.Password.Trim()))
{
//since the user is authenticated we will show the dashboard screen
this.Content = new MainPage();
}
else
{
this.ShowErrorMessage("Invalid username or password");
txtUserName.Focus();
}
}
}
Моя проблема в том, что код выполняется, прежде чем я получу данные в методе AuthenticateUser. Код немедленно сводится к «Недопустимое имя пользователя или пароль», и список загружается после завершения всего выполнения на странице xaml.
Я знаю, что есть что-то происходит не так с thingi Asynchronous ... и я также знаю, что нужно положить событие, чтобы узнать, когда загрузка завершена ........
, но я не знайте, как это сделать !!! может кто-то пожалуйста поместить немного света по этому вопросу ...
спасибо.
Что метод AuthenticateUser делать? Похоже, что он возвращает bool, но если это так, он выполняет синхронную аутентификацию? –
Для вас действительно важно включить код метода AuthenticateUser, в противном случае трудно понять поток выполнения. Этот код (насколько я могу судить), выполненный, когда вы нажимаете кнопку «Отправить», является ли это предположение правильным или является частью проблемы, с которой этот код работает, прежде чем нажать эту кнопку? – Murven