[DEVEXPRESS] Hướng dẫn Move up và Move down giữa các dòng trong gridview
Bài viết hôm nay, mình sẽ hướng dẫn cho các bạn cách di chuyển giữa các dòng trên gridview của Devexpress. Có thể di chuyển lên xuống hoặc drag and drop.
- Với công việc này sẽ giúp cho các bạn dễ dàng sắp xếp dữ liệu trên gridview một cách dễ dàng.
Xem hình ảnh demo ứng dụng:
Source code VB.NET
- Viết sự kiện cho nút Up
Private Sub button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles button1.Click
Dim view As GridView = gridView1
view.GridControl.Focus()
Dim index As Integer = view.FocusedRowHandle
If index <= 0 Then
Return
End If
Dim row1 As DataRow = view.GetDataRow(index)
Dim row2 As DataRow = view.GetDataRow(index - 1)
Dim val1 As Object = row1(OrderFieldName)
Dim val2 As Object = row2(OrderFieldName)
row1(OrderFieldName) = val2
row2(OrderFieldName) = val1
view.FocusedRowHandle = index - 1
End Sub
- Viết sự kiện cho nút Down
Private Sub button2_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles button2.Click
Dim view As GridView = gridView1
view.GridControl.Focus()
Dim index As Integer = view.FocusedRowHandle
If index >= view.DataRowCount - 1 Then
Return
End If
Dim row1 As DataRow = view.GetDataRow(index)
Dim row2 As DataRow = view.GetDataRow(index + 1)
Dim val1 As Object = row1(OrderFieldName)
Dim val2 As Object = row2(OrderFieldName)
row1(OrderFieldName) = val2
row2(OrderFieldName) = val1
view.FocusedRowHandle = index + 1
End Sub
- Viết sự kiện cho nút form load
Private Sub FillDataSet()
dataTable1.Rows.Add(New Object() { 1, "abstract", 1 })
dataTable1.Rows.Add(New Object() { 2, "event", 2 })
dataTable1.Rows.Add(New Object() { 3, "new", 3 })
dataTable1.Rows.Add(New Object() { 4, "struct", 4 })
dataTable1.Rows.Add(New Object() { 5, "as", 5 })
dataTable1.Rows.Add(New Object() { 6, "explicit", 6 })
dataTable1.Rows.Add(New Object() { 7, "null", 7 })
dataTable1.Rows.Add(New Object() { 8, "switch", 8 })
dataTable1.Rows.Add(New Object() { 9, "base", 9 })
dataTable1.Rows.Add(New Object() { 10, "extern", 10 })
dataTable1.Rows.Add(New Object() { 11, "object", 11 })
dataTable1.Rows.Add(New Object() { 12, "this", 12 })
dataTable1.Rows.Add(New Object() { 13, "bool", 13 })
dataTable1.Rows.Add(New Object() { 14, "false", 14 })
dataTable1.Rows.Add(New Object() { 15, "operator", 15 })
dataTable1.Rows.Add(New Object() { 16, "throw", 16 })
dataTable1.Rows.Add(New Object() { 17, "break", 17 })
dataTable1.AcceptChanges()
End Sub
Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
FillDataSet()
gridControl1.DataSource = dataTable1
gridView1.PopulateColumns()
gridView1.Columns(OrderFieldName).SortOrder = DevExpress.Data.ColumnSortOrder.Ascending
gridView1.OptionsCustomization.AllowSort = False
gridView1.OptionsView.ShowGroupPanel = False
End Sub
=> Chúc các bạn thành công.