Checkbox - RadioButton trong lập trình C# winforms
Trong bài này mình sẽ giới thiệu các bạn một trong số điều khiển thông thường của lập trình C# winforms đó chính là Checkbox và RadioButton. Đây là hai điều khiển được sử dụng rất nhiều, vì nó có thể trình bày đa dạng các giá trị trên Form.
Chúng ta sẽ cùng nhau tìm hiểu về Checkbox và RadioButton là gì? công dụng của nó như thế nào và nó có các thuộc tính và sự kiện gì? Sau đó mình sẽ viết một ứng dụng đơn giản sử dụng Checkbox và RadioButton.
1. Checkbox
Checkbox là điều khiển cho phép người dùng chọn hoặc không chọn trên Form, người dùng có thể chọn một hoặc nhiều giá trị cùng lúc.
Chúng ta có một số thuộc tính của Checkbox dưới đây:
Bài viết này được đăng tại [free tuts .net]
Thuộc tính | Mô tả |
---|---|
Checked | Giá trị True là được chịn, nếu thiết lập False thì không được chọn |
CheckState |
Thường dùng để kiểm tra tình trạng Checkbox có được chọn hay không. Mang 3 giá trị UnChecked, Checked và Indeterminate. - Checked: Điều khiển đang được chọn - UnChecked: Điều khiển không được chọn - Indeterminate: Điều khiển ở trạng thái không hoạt động |
AutoCheck | Mang giá trị True hoặc False, nếu giá trị True thì cho phép người dùng nhấp chuột để chọn, nếu là False thì không cho phép người dùng nhấp chuột chọn |
Text | Chuỗi văn bản hiển thị bên cạnh Checkbox |
ThreeState | Mang giá trị True hoặc False; nếu là True thì cho phép Checkbox có 3 trạng thái: Checked, UnChecked, Indeterminate |
RightToLeft | Mang giá trị Yes hoặc No; cho biết chuỗi văn bản hiển thị (thuộc tính Text) nằm bên trái hay bên phải của Checkbox |
2. RadioButton
RadioButton tương tự như Checkbox là điều khiển cho phép người dùng chọn hoặc không chọn, điểm khác biệt là với RadioButton người dùng chỉ có thể chọn một giá trị trong một nhóm.
Cả hai điều khiển Checkbox và RadioButton đều có chung một sự kiện đó chính là CheckedChanged, xảy ra khi thay đổi trạng thái chọn của Checkbox, RadioButton.
3. Ví dụ sử dụng các điều khiển Checkbox và RadioButton
Trong ví dụ này mình sẽ thực hiện một viết một ứng dụng sử dụng Checkbox và RadioButton, cụ thể như sau:
Thực hiện thiết kế giao diện cho Form như hình dưới đây:
Xử lý một số sự kiện sau:
- Khi click vào nút "Sở thích của bạn" thì những Checkbox được chọn bởi người dùng sẽ hiển thị trên hộp thoại MessageBox. Nếu không có Checkbox nào được chọn thì thông báo cho người dùng biết.
- Khi click vào nút "Màu bạn thích" thì RadioButton được chọn bởi người dùng sẽ được hiển thị trên hộp thoại MessageBox.
Chúng ta sẽ lần lượt thực hiện các yêu cầu nhé. Đầu tiên sẽ tạo giao diện cho Form giống như ứng dụng mẫu.
- Hai GroupBox (ở bài sau mình sẽ hướng dẫn chi tiết)
- 5 Checkbox với 5 sở thích tương ứng
- 5 RadioButton với 5 màu tương ứng
- 2 Button
Các bạn sẽ thay đổi một số thuộc tính như: Text, name, font,... cho giống với Form mẫu.
Sau khi thiết kế xong giao diện cho Form, bây giờ đến lúc các bạn sử lý sự kiện cho hai nút Button. Sự kiện đầu tiên là khi các bạn Click vào nút "Sở thích của bạn" thì các Checkbox được chọn sẽ hiển thị trên MessageBox.
Các bạn Double Click vào Button cần xử lý để viết sự kiện. Chúng ta sẽ sử dụng thuộc tính Checked để kiểm tra xem Checkbox có được chọn hay không bằng cách cho Checked == true.
Ta sẽ tạo một biến String str để lưu các Checkbox được chọn, nếu Checked == true thì thêm vào str.
private void btn_sothich_Click(object sender, EventArgs e) { string str = ""; if(chkbox_muasam.Checked == true) { str = chkbox_muasam.Text + "\n"; } if(chkbox_nghenhac.Checked == true) { str = str + chkbox_nghenhac.Text + "\n"; } if(chkbox_thethao.Checked == true) { str = str + chkbox_thethao.Text + "\n"; } if(chkbox_xemphim.Checked == true) { str = str + chkbox_xemphim.Text + "\n"; } if(chxbox_dulich.Checked == true) { str = str + chxbox_dulich.Text; } if(str.Length > 0) { MessageBox.Show("Sở thích của bạn là: \n" + str); } else { MessageBox.Show("Không có sở thích nào bạn chọn!!"); } }
Kết quả:
Tiếp đến ta sẽ xử lý sự kiện khi Click vào nút "Màu bạn thích", tương tự như nút "Sở thích của bạn" ta sử dụng thuộc tính Checked để kiểm tra xem RadioButton có được chọn, nếu được chọn thì hiển thị ra MessageBox.
private void btn_mauthich_Click(object sender, EventArgs e) { string str = ""; if (rdbtn_do.Checked == true) { str = rdbtn_do.Text + "\n"; } if (rdbtn_hong.Checked == true) { str = rdbtn_hong.Text + "\n"; } if (rdbtn_tim.Checked == true) { str = rdbtn_tim.Text + "\n"; } if (rdbtn_trang.Checked == true) { str = rdbtn_trang.Text + "\n"; } if (rdbtn_vang.Checked == true) { str = rdbtn_vang.Text; } if (str.Length > 0) { MessageBox.Show("Màu bạn thích là: \n" + str); } else { MessageBox.Show("Không có màu nào bạn chọn!!"); } }
Kết quả:
4. Kết luận
Như vậy là chúng ta đã tìm hiểu xong về hai điều khiển thông thường trong winforms là Checkbox và RadioButton. Đây là hai điều khiển rất quan trọng vì vậy các bạn hãy luyện tập thật nhiều để có thể sử dụng nó thật thành thạo nhé. Ở bài tiếp theo mình sẽ tiếp tục giới thiệu tới các bạn một trong số các điều khiển thông thường còn lại, hãy chú ý theo dõi nhé !!!