• Vui lòng đọc nội qui diễn đàn để tránh bị xóa bài viết
  • Tìm kiếm trước khi đặt câu hỏi

Sắp xếp trên DataGrid

Các thủ thuật liên quan đến việc xử lý ứng dụng, biểu mẫu và control
Hình đại diện của người dùng
truongphu
VIP
VIP
Bài viết: 4756
Ngày tham gia: CN 04/11/2007 10:57 am
Đến từ: Cam Đức, Khánh hòa
Has thanked: 14 time
Been thanked: 509 time

Sắp xếp trên DataGrid

Gửi bàigửi bởi truongphu » T.Bảy 04/08/2012 10:28 pm

Thủ thuật: Sắp xếp trên DataGrid
Tác giả: truongphu
Mô tả: Sắp xếp trên DataGrid



Sắp xếp trên DataGrid lệ thuộc vào recordset!
Ta có thể dùng câu truy vấn, thêm sau mệnh đề ORDER BY <TênCột> DESC
DESC hay ASC = ngược xuôi = lớn nhỏ

====
Recordset có property là SORT, kèm theo chuỗi sort.
Do đó trên một Recordset sẵn có, ta có thể lệnh ngay Recordset sort luôn, khỏi truy vấn như ở trên, kết quả tương đương.
====
Ứng dụng:
Ta có thể chọn sắp xếp ngay trên mỗi cột của DataGrid như hình sau:
1.JPG

Nhấn vào ô Ho ten, Dữ liệu sắp theo họ A-Z
Nhấn tiếp, Dữ liệu sắp Z-A
2.JPG


Và đương nhiên ta có thể nhấn ở các cột khác như SBD, NgaySinh...

Code:
  1. Private Sub DataGrid1_HeadClick(ByVal ColIndex As Integer)
  2.     Dim SapXep$
  3.     Static aa%: aa = aa + 1
  4.     Select Case ColIndex
  5.         Case 0: SapXep = "SBD"
  6.         Case 1: SapXep = "[Ho ten]"
  7.         Case 2: SapXep = "Ngaysinh"
  8.     End Select
  9.     If aa Mod 2 Then SapXep = SapXep & " ASC" Else SapXep = SapXep & " DESC"
  10.     rs.Sort = SapXep
  11.     DataGrid1.Refresh
  12. End Sub


Project:
Sap thu tu trên DataGrid.rar
(9.95 KiB) Đã tải 691 lần


Hay khong? :)>-


o0o--truongphu--o0o

.........
Ghé thăm:
Chuyện Linh Tinh

Hình đại diện của người dùng
tdc
Thành viên tâm huyết
Thành viên tâm huyết
Bài viết: 413
Ngày tham gia: CN 10/07/2011 2:38 pm
Đến từ: TP.NAM ĐỊNH
Has thanked: 20 time
Been thanked: 20 time

Re: Sắp xếp trên DataGrid

Gửi bàigửi bởi tdc » CN 05/08/2012 10:53 am

xuất sắc, cám ơn chú cháu lại có thêm kiến thức mới =D>

Hình đại diện của người dùng
ducpkh
Thành viên ưu tú
Thành viên ưu tú
Bài viết: 511
Ngày tham gia: T.Sáu 24/08/2012 12:28 pm
Đến từ: ADAFA
Has thanked: 9 time
Been thanked: 27 time

Re: Sắp xếp trên DataGrid

Gửi bàigửi bởi ducpkh » T.Hai 27/08/2012 10:44 pm

nhưng bây jờ muốn cho dataGird tự động sắp xếp theo thứ tự tăng dần thì làm thế nào hả bác?

Hình đại diện của người dùng
xuanha
Guru
Guru
Bài viết: 1222
Ngày tham gia: T.Năm 19/08/2010 4:25 pm
Đến từ: Ban Tổ chức Thành uỷ Hưng Yên, tỉnh Hưng Yên
Has thanked: 13 time
Been thanked: 380 time
Liên hệ:

Re: Sắp xếp trên DataGrid

Gửi bàigửi bởi xuanha » T.Hai 27/08/2012 11:26 pm

Bạn nên xem kỹ bài viết trên, nếu click chuột lần đầu tiên vào tiêu đề của cột nào thì nó sẽ sắp xếp cột đó theo kiểu tăng dần, click chuột lần thứ hai thì nó sẽ sắp xếp theo giảm dần (số lần click lẻ thì sắp xếp tăng dần, số lần click chẵn thì sắp xếp giảm dần).

Nếu bạn muốn sắp xếp một trường nào đó theo thứ tự tăng dần sau đó mới điền dữ liệu vào DataGrid thì bạn thực hiện ngay trong câu lệnh truy vấn.
VD: "Select*From Hoso order by Ngaysinh asc"
Kiểm phiếu Đại hội Đoàn, Đại hội Đảng
http://caulacbovb.com/forum/viewtopic.php?t=23599

anhhungbt9025
Thành viên chính thức
Thành viên chính thức
Bài viết: 32
Ngày tham gia: T.Tư 19/09/2012 9:01 am
Has thanked: 10 time

Re: Sắp xếp trên DataGrid

Gửi bàigửi bởi anhhungbt9025 » T.Năm 13/12/2012 2:27 pm

cảm ơn bạn rất nhiều...nhưng tôi nghĩ làm thành 2 nút checkbox thì có vẻ hay hơn...và nhờ bạn mà tôi đã làm đc điều đó....


Quay về “[VB] Ứng dụng - Form và Control”

Đang trực tuyến

Đang xem chuyên mục này: Không có thành viên nào trực tuyến.1 khách