Sự kiện TextChanged TextBox trong C# Winforms
Trong bài viết này chúng ta sẽ cùng nhau tìm hiểu về sự kiện TextChanged của TextBox trong C# Winforms. Đây là một sự kiện được sử dụng rất nhiều, hầu hết đều có trong các ứng dụng winforms.
Mình sẽ hướng dẫn các bạn cách tạo và xử lý sự kiện TextChanged của TextBox trong C# Winforms, cùng với đó là một ví dụ để các bạn có thể tham khảo.
1. Sự kiện TextChanged là gì?
TextChanged là một sự kiện, xảy ra khi nội dung trong ô TextBox được thay đổi.
Ví dụ khi chúng ta muốn tìm kiếm một danh sách các học sinh theo tên. Khi đó ta sử dụng sự kiện TextChanged để xử lý khi người dùng nhập vào tên cần tìm trong TextBox, các tên trùng với tên trong TextBox sẽ được hiện ra.
Bài viết này được đăng tại [free tuts .net]
2. Cách tạo sự kiện TextChanged của TextBox trong C# Winforms
Để tạo được sử kiện TextChanged, việc đầu tiên chúng ta cần thêm vào Form một vài TextBox. Lưu ý nhớ đặt tên cho TextBox để tiện cho việc sử dụng nó sau này nhé.
Sau khi đã thêm các TextBox vào Form và đặt tên cho nó. Bây giờ chúng ta cần tạo sự kiện TextChanged cho TextBox bằng hai cách sau:
Cách 1: Tạo sự kiện TextChanged bằng cách chuột phải vào TextBox sau đó chọn Properties, nhấn vào biểu tượng sấm set rồi đặt tên cho sự kiện TextChanged.
Cách 2: Ngoài ra còn có thể nhấn đúp chuột trái vào TextBox, khi đó hệ thống sẽ tạo sự kiên TextChanged và đưa tới cửa sổ viết code.
3. Xử lý sự kiện TextChanged của TextBox trong C# Winforms
Bây giờ chúng ta sẽ bắt đầu xử lý cho sự kiện TextChanged của TextBox vừa được tạo ở trên.
Giả sử mình có một bài toán như sau: khi người dùng nhập nội dung vào TextBox 1 thì nội dung ở TextBox 2 sẽ bị xóa đi hết. Ngược lại khi nội dung ở TextBox 1 bị xóa hết đi thì TextBox 2 sẽ hiển thị nội dung "Hello, I'm Freetuts !!!".
Để làm được điều này ta cần xử lý sự kiện TextChanged trên TextBox 1. Sử dụng if else để tạo điều kiện cho TextBox.
if(txtTextBox1.Text == "") { txtTextBox2.Text = "Hello, I'm Freetuts !!!"; }
Nếu TextBox 1 trống thì ta hiển thị nội dung "Hello, I'm Freetuts !!!" ở TextBox 2.
else { txtTextBox2.Text = ""; }
Ngược lại nếu TextBox 1 có nội dung thì ta sẽ xóa tất cả nội dung có trong TextBox 2.
Kết quả: Khi người dùng nhập nội dung vào TextBox 1 thì TextBox hai sẽ trống, ngược lại người dùng xóa nội dung ở TextBox 2 thì TextBox 2 sẽ hiển thị nội dung.
4. Code hoàn chỉnh
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace EventsInWinform { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void txtTextBox1_TextChanged(object sender, EventArgs e) { if(txtTextBox1.Text == "") { txtTextBox2.Text = "Hello, I'm Freetuts !!!"; } else { txtTextBox2.Text = ""; } } } }
Qua bài hướng dẫn này, các bạn sẽ biết được cách tạo sự và xử lý sự kiện TexhChanged của TextBox trong C# Winforms. Đây là một sự kiện rất thông dụng nên các bạn hãy luyện tập thật nhiều để thành thạo nói nhé, chúc các bạn thành công !!!