Torna al Thread

Public Class CustomComparer Implements IComparer Private Position As Integer Private Order As Integer = 1 Private NomeColonna As String = "" Public Sub New(_NomeColonna As String, Optional ByVal Ascending As Boolean = True) NomeColonna = _NomeColonna If Not Ascending Then Order = -1 End If End Sub <System.Runtime.InteropServices.DllImport("shlwapi.dll", CharSet:=System.Runtime.InteropServices.CharSet.Unicode, ExactSpelling:=True, SetLastError:=False)> _ Private Shared Function StrCmpLogicalW(strA As String, strB As String) As Integer End Function Public Function Compare(ByVal x As Object, ByVal y As Object) As Integer Implements System.Collections.IComparer.Compare Dim pp As Reflection.PropertyInfo = CType(x, DatiItemLView_Dati).GetType().GetProperty(NomeColonna) Dim value As Object = pp.GetValue(CType(x, DatiItemLView_Dati), Nothing) Dim ValoreX As String = value Dim pp2 As Reflection.PropertyInfo = CType(x, DatiItemLView_Dati).GetType().GetProperty(NomeColonna) Dim value2 As Object = pp.GetValue(CType(y, DatiItemLView_Dati), Nothing) Dim ValoreY As String = value2 Return StrCmpLogicalW(ValoreX, ValoreY) * Order End Function End Class
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5