과 일치하는 항목이 없으면 MessageBox에 대한 피드백을 제공합니다. 현재 로그인 시스템을 만들고 있으며 사용자 이름이나 비밀번호가 잘못되었을 때 피드백을 보내려고합니다.텍스트 파일 C#
Ryan:password
Username:password
내가 Ryan
를 입력하고 password
, 잘 작동하고 다음 양식으로 나를 제공 : 여기
Username
과
password
을 입력하면 먼저 'Username Incorrect'메시지 상자가 나타나고 그 메시지 상자를 닫으면 다음 양식으로 넘어갑니다.
두 번째 줄에 세부 정보를 입력하더라도 사용자 이름이 잘못된 MessageBox를 먼저 표시하지 않고 직접 다음 양식으로 가져오고 싶습니다. 앞으로는 텍스트 파일에 더 많은 행이있을 것입니다.
도움을 주시면 감사하겠습니다. 당신의 senario에서
private void button1_Click(object sender, EventArgs e)
{
string[] userdetails = File.ReadAllLines(AppDomain.CurrentDomain.BaseDirectory + "UserDetails.txt");
foreach (string user in userdetails)
{
string[] splitDetails = user.Split(':');
Login.username = splitDetails[0];
Login.password = splitDetails[1];
label1.Text = Login.username;
label2.Text = Login.password;
if ((txtUsername.Text == Login.username) && (txtPassword.Text == Login.password))
{
MessageBox.Show("Welcome " + Login.username);
this.Hide();
frmMainMenu menu = new frmMainMenu();
menu.Show();
break;
}
else
{
if ((txtUsername.Text == Login.username) && (txtPassword.Text != Login.password))
{
MessageBox.Show("Password incorrect");
break;
}
if(txtUsername.Text != Login.username)
{
MessageBox.Show("Username incorrect");
}
}
}
}
대단히 감사합니다. 그러나 MessageBox.Show ((usernameFound? "Password": "Username") + "incorrect"); 나에게? 감사! –
3 진 연산자로 간단한 조건 확인을 쓸 수 있습니다. 그것은 '점검 할 조건'과 같이 쓴다. 참이면 결과 : 거짓이면 결과. 나는 비 - 삼항 등가물로 답을 편집했다. – Kilazur