1. 입력값에 대한 validation 처리
private void SumNumbers_Click(object sender, EventArgs e)
{
int number1 = 0;
int number2 = 0;
// String.IsNullOrWhiteSpace => 값이 공백인지 null인지 판별
// int.TryParse(string s, out int result) => 첫번째 매개변수에 담긴 string 값이 정수인지 판별 후 두 번째 매개변수인 변수에 저장
// Focus(): 해당 component에 포커싱
// SelectAll(): 해당 component의 value를 바꿀 수 있게 표시
// Validation: 사용자로부터 다른 파일로 부터 값을 읽을때 사용 여부
if (String.IsNullOrWhiteSpace(Sum1.Text))
{
MessageBox.Show("Sum1에 숫자를 입력해주세요.");
Sum1.Focus();
return;
}
if(!int.TryParse(Sum1.Text, out number1))
{
MessageBox.Show("Sum1에 문자가 들어왔습니다. 숫자를 입력해주세요.");
Sum1.SelectAll();
Sum1.Focus();
return;
}
if(String.IsNullOrWhiteSpace(Sum2.Text))
{
MessageBox.Show("Sum2에 숫자를 입력해주세요.");
Sum2.Focus();
return;
}
if (!int.TryParse(Sum2.Text, out number2))
{
MessageBox.Show("Sum2에 문자가 들어왔습니다. 숫자를 입력해주세요.");
Sum2.SelectAll();
Sum2.Focus();
return;
}
int sum = number1 + number2;
SumResult.Text = Add(number1, number2).ToString()+", " +sum.ToString()+", "+Add2(number1, number2).ToString();
}
2. 적용 내용
if (String.IsNullOrWhiteSpace(Sum1.Text))
{
MessageBox.Show("Sum1에 숫자를 입력해주세요.");
Sum1.Focus();
return;
}
IsNullOrWhiteSpace() 메서드를 이용하여 Sum1.Text로 받아온 값이 공백 또는 null값인지 판별 후 true일 경우 알림창을 띄어주고 Sum1 입력칸에 포커싱을 한 뒤 return 해준다. (Sum2 에 대한 입력값도 동일하게 처리)
if(!int.TryParse(Sum1.Text, out number1))
{
MessageBox.Show("Sum1에 문자가 들어왔습니다. 숫자를 입력해주세요.");
Sum1.SelectAll();
Sum1.Focus();
return;
}
int.TryParse(string s, out in result) 메서드를 이용하여 Sum1.Tex로 받아온 값이 정수인지 판별 후 true일 경우 number1 변수에 값을 저장하고 false일 경우 알림창을 띄어주고 Sum1 입력칸에 포커싱과 값을 바꿀 값을 표시해준다. (Sum2 에 대한 입력값도 동일하게 처리)
'C#' 카테고리의 다른 글
C# Window Form 계산기 만들기(2)-4 (1) | 2023.03.22 |
---|---|
C# Window Form 계산기 만들기(1)-2 (0) | 2023.03.21 |
C# 개념-1 (0) | 2023.03.21 |