Sự kiện Enter và Leave trong C# Winforms

Trong bài viết này mình sẽ hướng dẫn các bạn cách sử dụng sự kiện Enter và sự kiện Leave trong C# Winforms. Đây là các sự kiện cơ bản và được sử dụng rất nhiều khi lập trình.

Hiểu đơn giản thì sự kiện Enter xảy ra khi chúng ta đặt con trỏ chuột vào control và sự kiện Leave xảy ra khi ta đưa con trỏ chuột ra khỏi control.

Giả sử ta có một TextBox với nội dung bên trong là “Kiso.vn”. Bây giờ khi chúng ta đặt con trỏ chuột vào TextBox, sự kiện Enter sẽ xảy ra và thực hiện xóa dòng chữ “Kiso.vn”. Khi chúng ta đưa con trỏ chuột ra khỏi TextBox, sự kiện Leave xảy ra và hiển thị lại dòng chữ “Kiso.vn”.

Để hiểu rõ hơn, mình sẽ viết một chương trình sử dụng sự kiện Enter và Leave để thực hiện hành động như trên.

Bài viết này được đăng tại [kiso.vn]

Ví dụ sử dụng sự kiện Enter và Leave trong C# Winforms

Việc đầu tiên chúng ta cần tạo giao diện để hiển thị, trong ví dụ này mình sử dụng hai TextBox. Một TextBox có nội dung là “Kiso.vn” và một TextBox để trống.

Ở TextBox thứ nhất mình đã cho chữ căn giữa và màu chữ là màu của hệ thống InactiveCaption.

bai17 05 png

Bây giờ sẽ thực hiện tạo sự kiện Enter và Leave cho TextBox thứ nhất mình đặt tên là textBox1. Nháy đúp chuột vào sự kiện Enter và Leave ở mục Event trong Properties.

bai17 03 png

Sau khi tạo sự kiện, hệ thống sẽ đưa chúng ta qua cửa sổ viết code, nơi để thực hiện viết sự kiện cho control. Đầu tiên ta sẽ viết sự kiện Enter (khi người dùng đặt con trỏ chuột vào bên trong TextBox).

Nếu nội dung trong ô textBox là “Kiso.vn” thì ta thực hiện xóa nội dung bên trong TextBox và chuyển màu chữ trở về trạng thái Hightlight.

private void textBox1_Enter(object sender, EventArgs e)
        {
            if(textBox1.Text == "Kiso.vn")
            {
                textBox1.Text = "";
                textBox1.ForeColor = SystemColors.Highlight;
            }
        }

Tiếp đến là viết sự kiện Leave (khi người dùng đưa con trỏ chuột ra khỏi TextBox). Nếu TextBox trống thì ta thực hiện hiển thị lại nội dung “Kiso.vn” và đổi màu chữ thành màu của hệ thống InactiveCaption.

private void textBox1_Leave(object sender, EventArgs e)
        {
            if(textBox1.Text == "")
            {
                textBox1.Text = "Kiso.vn";
                textBox1.ForeColor = SystemColors.InactiveCaption;
            }
        }

Kết quả:

bai17 04 png

Như vậy là chúng ta đã thực hiện xong các ví dụ áp dụng sự kiện Enter và Leaver trong C# Winforms. Chúc các bạn thực hiện thành công !!!

Bài viết liên quan

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *