• Thứ Sáu, 16/11/2007 08:37 (GMT+7)

    Tạo liên kết dữ liệu trên Gridview trong form?

    Câu hỏi :
    Xin hỏi cách hiển thị bitmap của tập tin CSDL Access lên form của VB .Net. Và trong Visual C# 2005, xin hỏi làm sao tạo liên kết dữ liệu trên gridview với trình chơi đa phương tiện (ví dụ khi nhấn vào tên bài hát thì bài hát đó được chơi).

    Trả lời :

    Để quản lý thông tin media (bài hát, hình, phim...) trong database, người ta thường chỉ chứa đường dẫn file media trong field qui định, file media mới chứa trực tiếp dữ liệu media theo định dạng xác định. Bạn có thể dùng điều khiển WMP (Windows Media Player) để chơi các file media. Thí dụ sau đây là 1 ứng dụng gồm 2 form:

     - Form1 chứa điều khiển DataGridView để hiển thị bảng dữ liệu của database với tên mặc định là dataGridView1. Bảng dữ liệu là danh sách các record quản lý bài nhạc, mỗi record gồm các field: tenbaihat, nhacsi, amnhac (như vậy field amnhac có chỉ số là 2). Giả sử field amnhac chứa đường dẫn của file nhạc tương ứng.

     - Form2 chứa điều khiển WMP với tên mặc định là axWindowsMediaPlayer1. Sau khi thiết kế form này, bạn hãy vào cửa sổ soạn thảo code của form, tìm phát biểu định nghĩa biến axWindowsMediaPlayer1 rồi hiệu chỉnh từ khóa tầm vực từ private thành public để có thể truy xuất từ ngoài Form2.

     Bạn hãy hiển thị Form2 và tạo hàm xử lý sự kiện CellClick trên đối tượng DataGrideView rồi viết code như sau:

     //hàm xử lý click chuột vào cell của DataGrideView
     private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e) {
     //kiểm tra xem người dùng nhấn đúng cột “amnhac”
     if (e.ColumnIndex == 2){
     //tạo Form2
     Form2 dlg = new Form2();
     //hiển thị Form2
     dlg.Show();
     //thiết lập file media cho WMP
     dlg.axWindowsMediaPlayer1.URL = dataGridView1.Rows[e.RowIndex]. Cells[e.ColumnIndex].FormattedValue.ToString();
     //WMP tự động chơi file media
     //và người dùng sẽ đóng Form2.
     }
     }

    Chuyên mục: Lập trình