CƠ BẢN
SỰ KIỆN
NÂNG CAO
FIREBASE
WINDOWS FORM
CÁC CHỦ ĐỀ
BÀI MỚI NHẤT
MỚI CẬP NHẬT

Sự kiện SelectedIndexChanged ListBox trong C# Winforms

Trong bài viết này chúng ta sẽ tìm hiểu về sự kiện SelectedIndexChanged ListBox trong C# Winforms. Đây là một sự kiện thông dụng của ListBox, thường được sử dụng trong các ứng dụng có chứa ListBox.

test php

banquyen png
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

Mình sẽ hướng dẫn cách tạo và xử lý sự kiện SelectedIndexChanged, cùng với đó là một ví dụ để các bạn có thể tham khảo.

Sự kiện SelectedIndexChanged là gì?

Sự kiện SelectedIndexChanged của ListBox là sự kiện xảy ra khi chỉ mục của Item trong ListBox được chọn đã được thay đổi.

Ví dụ khi chúng ta chọn vào một Item bất kỳ trên ListBox, Item đó sẽ được chuyển qua một ListBox khác. Khi đó sự kiện SelectedIndexChanged đã xảy ra.

Bài viết này được đăng tại [free tuts .net]

Để hiểu rõ hơn, các bạn cùng mình sẽ cách tạo và xử lý sự kiện ở phần dưới đây.

Cách tạo sự kiện SelectedIndexChanged ListBox trong C# Winforms

Để tạo được sự kiện SelectedIndexChanged đầu tiên chúng ta cần thêm ListBox vào Form, sau đó đặt tên cho nó. Bây giờ chúng ta sẽ thêm các Items vào cho ListBox.

Nhấn chuột phải vào ListBox sau đó chọn Properties, kéo xuống bên dưới và chọn vào thuộc tính Collection như hình dưới đây.

selected index changed 01 png

Khi đó một cửa sổ mới hiện ra, ở đây các bạn nhập nội dung cho các Items.

selected index changed 06 png

Sau khi đã có được các Items, bây giờ chúng ta bắt đầu đi tạo sự kiện SelectedIndexChanged bằng một trong hai cách sau.

Cách 1: Chuột phải vào ListBox chọn Properties, sau đó chọn vào biểu tượng sấm sét, kéo xuống bên dưới và đặt tên cho sự kiện SelectedIndexChanged.

selected index changed 02 png

Cách 2: Ngoài cách ở trên các bạn có thể nhấp đúp chuột trái vào ListBox, khi đó hệ thống sẽ tự tạo sự kiện SelectedIndexChanged cho chúng ta.

Xử lý sự kiện SelectedIndexChanged ListBox trong C# Winforms

Bây giờ chúng ta sẽ bắt đầu xử lý sự kiện SelectedIndexChanged vừa được tạo ở trên.

Giả sử mình có bài toán như sau: Ta có hai ListBox chứa các môn học khác nhau. Khi người dùng chọn vào một môn học ở ListBox 1, sẽ thông báo tồn tại nếu môn học đó đã có trong ListBox 2 và ngược lại.

Đầu tiên chúng ta sẽ khai báo một biến curItem để chứa nội dung của Item được chọn bởi người dùng thông qua thuộc tính SelectedItem.

string curItem = listBox1.SelectedItem.ToString();

Tiếp đến khai báo biến index để lấy kết quả trả về từ việc tìm kiếm nội dung của curItem với các Items trong ListBox 2.

int index = listBox2.FindString(curItem);

Nếu giá trị trả về là -1, có nghĩa là chưa có môn học đó ở trong ListBox 2, khi đó ta thông báo cho người dùng là môn học chưa có.

Ngược lại, thông báo cho người dùng là môn học đã có. Việc thông báo này sẽ hiển thị ở trên một Label có tên là lblThongBao.

if (index == -1)
     lblThongBao.Text = "Chưa có môn học " + listBox1.SelectedItem;
else
     lblThongBao.Text = "Đã có môn học " + listBox1.SelectedItem;

Kết quả:

selected index changed 04 png selected index changed 05 png

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 EventsListBox
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            string curItem = listBox1.SelectedItem.ToString();

            int index = listBox2.FindString(curItem);

            if (index == -1)
                lblThongBao.Text = "Chưa có môn học " + listBox1.SelectedItem;
            else
                lblThongBao.Text = "Đã có môn học " + listBox1.SelectedItem;
        }
    }
}

Như vậy là chúng ta đã tìm hiểu xong về sự kiện SelectedIndexChanged ListBox trong C# Winforms. Trên đây là một ví dụ cơ bản về cách sử dụng sự kiện mà mình đã đưa ra. Các bạn có thể áp dụng vào các bài toán phức tạp hơn nhé, chúc các bạn thành công !!!

Cùng chuyên mục:

Memento Design Pattern trong C# - Cách triển khai và ví dụ

Memento Design Pattern trong C# - Cách triển khai và ví dụ

Interpreter Design Pattern trong C# - Cách triển khai và ví dụ

Interpreter Design Pattern trong C# - Cách triển khai và ví dụ

Strategy Design Pattern trong C# - Cách triển khai và ví dụ

Strategy Design Pattern trong C# - Cách triển khai và ví dụ

Visitor Design Pattern trong C# - Cách triển khai và ví dụ

Visitor Design Pattern trong C# - Cách triển khai và ví dụ

Command Design Pattern trong C# - Cách triển khai và ví dụ

Command Design Pattern trong C# - Cách triển khai và ví dụ

Observer Design Pattern trong C# - Cách triển khai và ví dụ

Observer Design Pattern trong C# - Cách triển khai và ví dụ

Iterator Design Pattern trong C# - Cách triển khai và ví dụ

Iterator Design Pattern trong C# - Cách triển khai và ví dụ

Proxy Design Pattern trong C# - Cách triển khai và ví dụ

Proxy Design Pattern trong C# - Cách triển khai và ví dụ

Composite Design Pattern trong C# - Cách triển khai và ví dụ

Composite Design Pattern trong C# - Cách triển khai và ví dụ

Bridge Design Pattern trong C# - Cách triển khai và ví dụ

Bridge Design Pattern trong C# - Cách triển khai và ví dụ

Decorator Design Pattern trong C# - Cách triển khai và ví dụ

Decorator Design Pattern trong C# - Cách triển khai và ví dụ

Facade Design Pattern trong C# - Cách triển khai và ví dụ

Facade Design Pattern trong C# - Cách triển khai và ví dụ

Adapter Design Pattern trong C# - Cách triển khai và ví dụ

Adapter Design Pattern trong C# - Cách triển khai và ví dụ

Singleton Design Pattern trong C# - Cách triển khai và ví dụ

Singleton Design Pattern trong C# - Cách triển khai và ví dụ

Prototype Design Pattern trong C# - Cách triển khai và ví dụ

Prototype Design Pattern trong C# - Cách triển khai và ví dụ

Builder Design Pattern trong C# - Cách triển khai và ví dụ

Builder Design Pattern trong C# - Cách triển khai và ví dụ

Tự viết ứng dụng quản lý xe ra vào C# Winforms và Firebase

Tự viết ứng dụng quản lý xe ra vào C# Winforms và Firebase

Trong bài viết này Freetuts chia sẽ cho các bạn một ứng dụng khá thú…

Factory Design Pattern trong C# - Cách triển khai và ví dụ

Factory Design Pattern trong C# - Cách triển khai và ví dụ

Chúng ta sẽ tìm hiểu về Factory Design Pattern trong C# là gì? Cách triển…

Hướng dẫn giải phương trình bậc hai trong C#

Hướng dẫn giải phương trình bậc hai trong C#

Giải phương trình bậc nhất ax + b = 0 trong C#

Giải phương trình bậc nhất ax + b = 0 trong C#

Top