좋은 하루 되세요! 리더를 사용하여 내 데이터베이스에서 데이터를 호출 할 수 있으며 데이터베이스에서 데이터를 가져온 후 예상 데이터를 얻을 때 messageBox가 나타납니다. 다음은 내 샘플 코드입니다.
if (textBox5.Text == "")
{ }
else
{
DialogResult ms = MessageBox.Show("Try Again", "Error", MessageBoxButtons.OK, MessageBoxIcon.Stop);
if (ms == DialogResult.OK)
{
textBox5.Clear();
textBox1.Clear();
listBox5.Items.Clear();
textBox3.Clear();
listBox4.Items.Clear();
}
}
while (reader.Read())
{
listBox4.Items.Clear();
if (string.Compare(label1.Text, reader.GetString(0)) == 0)
{
for (int t = 1; t < 11; t++)
{
words.Add(reader.GetString(t));
}
}
words.Shuffle();
listBox4.Items.AddRange(words.ToArray());
}
reader.Close();
coon.Close();
여기 내 문제는이 코드를 적용하면 두 개의 messageBox가 나타나 므로이 코드를 제거합니다.
textBox5.Clear();
textBox1.Clear();
listBox5.Items.Clear();
textBox3.Clear();
listBox4.Items.Clear();
내가 원하는 것은 messageBox를 한 번 표시하는 것입니다. 이걸 도와 주 시겠어요?
충분한 코드를 표시하지 않았지만이 함수가 TextChanged
이벤트 내부에 있다고 가정하겠습니다 .
이 경우 TextBox5
텍스트 가 있는지 확인한 다음 양식에서 여러 컨트롤을 지 웁니다. 다른 이벤트와 그들이하는 일을 보여주지 않았기 때문에이 시점에서 더 많은 것을 말하기가 어려울 것입니다.
코드를 디버깅하고 한 줄씩 단계별로 진행하면 프로그램 흐름의 논리를 따르고 딸꾹질이 발생하는 위치를 확인할 수 있습니다.
처음 세 줄도 변경합니다.
if (textBox5.Text == "")
{ }
else
with if (!string.IsNullOrEmpty(this.textBox5.Text.Trim()))
는 문자열이 비어 있지 않은 경우 (정확하게는 null 또는 비어 있음)를 의미합니다.
도움이 되었기를 바랍니다.
행운을 빕니다
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다