Bạn có thể cần phải sử dụng TextChanged sự kiện thay vì sử dụng ValueChanged
. Sự kiện Giá trị đã thay đổi cần bạn nhấn phím enter sau khi thay đổi giá trị để có được ValueChanged được kích hoạt.
gì MSDN nói về NumericUpDown.ValueChanged
Event
Đối với trường hợp ValueChanged xảy ra, tài sản giá trị gia tăng có thể được thay đổi trong mã, bằng cách nhấn lên hoặc nút xuống, hoặc do người sử dụng nhập giá trị mới được đọc bởi điều khiển. Giá trị mới được đọc khi người dùng truy cập phím ENTER hoặc điều hướng khỏi điều khiển. Nếu người dùng nhập giá trị mới và sau đó nhấp vào nút lên hoặc xuống, sự kiện Giá trị Giá trị đã thay đổi sẽ xảy ra hai lần, MSDN.
Sự kiện liên kếtThay đổi sự kiện.
private void TestForm_Load(object sender, EventArgs e)
{
numericUpDown1.TextChanged += new EventHandler(numericUpDown1_TextChanged);
}
Tuyên bố về sự kiện TextChanged.
void numericUpDown1_TextChanged(object sender, EventArgs e)
{
button1.Enabled = true;
}
Và vấn đề là gì? – Abbas
Cố gắng lấy nét con trỏ của điều khiển SốUpDown sau khi bạn thay đổi số –
Hoặc nhấn enter. Bạn cũng có thể chỉ đăng ký sự kiện nhấn phím, nhưng hãy nhớ rằng văn bản chưa được xác thực vì vậy nếu bạn gọi giá trị ở đó, bạn sẽ nhận được giá trị cũ. Tuy nhiên, nếu bạn gọi giá trị Số đếm ngược bên trong sự kiện button.Click, nó sẽ được thay đổi. – Martheen