textBox1_Leave
이라는 이벤트를 만들었습니다. 그러나 프로그램을 실행할 때 포커스가 txtBox1
에서 이동하면 이벤트가 트리거되지 않습니다.이벤트가 트리거되지 않았습니다.
사용자가 입력 한 Name
값이 txtBox1
에 입력되어 있는지 확인할 수 있도록이 이벤트가 트리거되기를 바랍니다. 그렇다면 button1.Enable = true
을 설정하여 button1
을 사용하고 그렇지 않으면 false
을 사용하고 싶습니다.
내 C# 코드 :
private void textBox1_Leave(object sender, EventArgs e)
{
OleDbConnection A=new OleDbConnection();
A.ConnectionString=Program.DBPATH;
A.Open();
OleDbCommand BB=new OleDbCommand();
BB.Connection=A;
BB.CommandText="SELECT username FROM Users WHERE (username = '" + textBox1.Text + "')";
OleDbDataReader CC = BB.ExecuteReader();
if (CC.Read())
{
button1.Enabled=true;
}
else
{
button1.Enabled=false;
}
}
디버거를 사용하면 어떻게됩니까? 아무것도 없다면 이벤트는 소리가 나지 않는 것처럼 들린다. 폼의 생성자에'textBox1.Leave + = textBox1_Leave; '를 넣는다. – LarsTech
'아무 일도 일어나지 않습니다'는 의미는 무엇입니까? 귀하의 이벤트 핸들러가 전혀 입력되지 않았거나 DB가 호출되지 않고 버튼 상태가 수정 되었습니까? –
이벤트가 전혀 호출되지 않는 경우 문제는 이벤트 핸들러가 올바르게 등록되어 실제로 떠나는 것이 아니라는 것입니다. 마우스를 움직이면 이벤트가 시작되지 않습니다. 아무것도 작동하지 않는다는 것은 모호합니다. 더 많은 정보를 제공하거나이 질문은 닫힙니다. – Paparazzi