Cita de: spiritdead en 1 Enero 2013, 00:24 AM
si lo necesitas urgente, avisame y por teamviewver se te enseña rapido, dificil no es XD
Gracias spiritdead pero no me urge, aún estoy aprendiendo a usar el listview convencional.
@seba123Neo
¿Como lo hago funcionar?
Me da error en las variables:
Código [Seleccionar]
vColumnaOrden
vOrden
Dicen que no están declaradas, y no se con que tipo de valor debo setearlas ni nada xD
Código (vbnet) [Seleccionar]
Private Sub GListView_ColumnClick(ByVal sender As Object, ByVal e As System.Windows.Forms.ColumnClickEventArgs) Handles GListView.ColumnClick
Dim vIndiceColumna As ColumnHeader = GListView.Columns(e.Column)
Dim vTipoOrden As System.Windows.Forms.SortOrder
If vColumnaOrden Is Nothing Then
vTipoOrden = SortOrder.Ascending
vOrden = SortOrder.Ascending
Else
If vIndiceColumna.Equals(vColumnaOrden) Then
If vOrden = SortOrder.Ascending Then
vTipoOrden = SortOrder.Descending
vOrden = SortOrder.Descending
Else
vTipoOrden = SortOrder.Ascending
vOrden = SortOrder.Ascending
End If
Else
vTipoOrden = SortOrder.Ascending
vOrden = SortOrder.Ascending
End If
End If
vColumnaOrden = vIndiceColumna
GListView.ListViewItemSorter = New COrdenarListview(e.Column, vTipoOrden)
GListView.Sort()
End Sub
EDITO:
Seba123Neo, si no he captado mal la idea, al final lo he hecho así, y funciona bien, pero no sé si es peor que tu snippet:
Código (vbnet) [Seleccionar]
' En las declaraciones...
Dim ColumnOrder As String = "Down"
Private Sub GListView_ColumnClick(ByVal sender As Object, ByVal e As System.Windows.Forms.ColumnClickEventArgs) Handles GListView.ColumnClick
If ColumnOrder = "Down" Then
Me.GListView.ListViewItemSorter = New COrdenarListview(e.Column, SortOrder.Ascending)
GListView.Sort()
ColumnOrder = "Up"
ElseIf ColumnOrder = "Up" Then
Me.GListView.ListViewItemSorter = New COrdenarListview(e.Column, SortOrder.Descending)
GListView.Sort()
ColumnOrder = "Down"
End If
End Sub