C#의 TextBox에만있는 숫자
이 자습서에서는 C#의 숫자 만 허용하는 텍스트 상자를 만드는 방법을 소개합니다.
C#에서NumberUpDown
보기가있는 숫자 전용 TextBox
NumberUpDown
보기는 C#에서 사용자로부터 숫자 입력을 가져 오는 데 사용됩니다. Windows Form 애플리케이션에NumberUpDown
보기를 추가하려면 도구 상자에서NumberUpDown
을 선택하고 양식으로 드래그하기 만하면됩니다. NumberUpDown
보기는 사용자로부터 숫자가 아닌 값을 가져 오지 않습니다. 또한 커서 키를 사용하여 한 값을 위 또는 아래로 이동할 수 있습니다. 다음 코드 예제는 C#의NumberUpDown
보기를 사용하여 사용자의 숫자 값만 허용하는 텍스트 상자를 만드는 방법을 보여줍니다.
using System;
using System.Windows.Forms;
namespace textbox_numbers_only {
public partial class Form1 : Form {
public Form1() {
InitializeComponent();
}
private void numericUpDown1_KeyPress(object senderObject, KeyPressEventArgs KeyPressEvent) {
if (!char.IsControl(KeyPressEvent.KeyChar) && !char.IsDigit(KeyPressEvent.KeyChar) &&
(KeyPressEvent.KeyChar != '.')) {
KeyPressEvent.Handled = true;
}
if ((KeyPressEvent.KeyChar == '.') && ((senderObject as TextBox).Text.IndexOf('.') > -1)) {
KeyPressEvent.Handled = true;
}
}
private void numericUpDown1_ValueChanged(object sender, EventArgs e) {}
}
}
출력:
위 코드에서는 C#의NumberUpDown
보기를 사용하여 사용자의 숫자 값만 허용하는 텍스트 상자를 만듭니다. numericUpDown1_KeyPress()
함수에서.
에 대한 확인을 추가했습니다. 값을 사용하여 사용자가 소수점 값을 입력 할 수 있습니다. 이 텍스트 상자는 2 자리 숫자 값만 사용합니다.
C#에서TextBox
보기가있는 숫자 전용 TextBox
독점보기를 사용하지 않으려면 숫자 값만 허용하도록 원래TextBox
보기를 수정할 수도 있습니다. TextBox_KeyPress()
함수 내에서KeyPressEventArgs.Handled
속성을 사용하여 텍스트 상자에서 처리해야하는 키 누름을 지정할 수 있습니다. 다음 코드 예제는 C#의TextBox
보기로 숫자 값만 허용하는 텍스트 상자를 만드는 방법을 보여줍니다.
using System;
using System.Windows.Forms;
namespace textbox_numbers_only {
public partial class Form1 : Form {
public Form1() {
InitializeComponent();
}
private void textBox1_TextChanged(object sender, EventArgs e) {}
private void textBox1_KeyPress(object sender, KeyPressEventArgs KeyPressEvent) {
KeyPressEvent.Handled = !char.IsDigit(KeyPressEvent.KeyChar);
}
}
}
출력:
위의 코드에서 우리는 텍스트 상자가textBox1_KeyPress()
함수의KeyPressEvent.Handled
속성을 사용하여 숫자가 아닌 값을 처리하지 않도록 지정했습니다.
Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.
LinkedIn