How to sort column with numeric data in WinForms Grid DataBound?
To sort the column with numeric data, it can be handled by customizing the sorting with IComparer. In this sample, sorting comparison can be done by IntComparer which is derived from IComparer in WinForms Grid DataBound.
Sorting behavior might be single click, double click or none can be handled by SortBehaviour. Here, a helper class `CustomSortHelper` is used set the custom comparer for the columns.
this.gridDataBoundGrid1.SortBehavior = GridSortBehavior.SingleClick; CustomSortHelper sortHelper = new Customsorthelper(this.gridDataBoundGrid1); sortHelper.SetUnboundColumn("Col3", values, new IntComparer());
Me.gridDataBoundGrid1.SortBehavior = GridSortBehavior.SingleClick Dim sortHelper As New Customsorthelper(Me.gridDataBoundGrid1) sortHelper.SetUnboundColumn("Col3", values, New IntComparer())
`IntComparer` derived from the IComparer which can be used for compare the x and y indices.
public class IntComparer : IComparer { public int Compare(object x, object y) { if (x == null && y == null) return 0; else if (x == null) return -1; else if (y == null) return 1; else return int.Parse(x.ToString()) - int.Parse(y.ToString()); } }
Public Class IntComparer Implements IComparer Public Function Compare(ByVal x As Object, ByVal y As Object) As Integer If x Is Nothing AndAlso y Is Nothing Then Return 0 ElseIf x Is Nothing Then Return -1 ElseIf y Is Nothing Then Return 1 Else Return Integer.Parse(x.ToString()) - Integer.Parse(y.ToString()) End If End Function End Class
Sample
C#: Sort a column
VB: Sort a column
Conclusion
I hope you enjoyed learning how to to sort column with numeric data in WinForms Grid DataBound.
You can refer to WinForms Grid DataBound feature tour page to know about its other groundbreaking feature representations and documentation, and how to quickly get started for configuration specifications. You can also explore our WinForms GridGrouping example to understand how to create and manipulate data.
For current customers, you can check out our components from the License and Downloads page. If you are new to Syncfusion, you can try our 30-day free trial to check out our other controls.
If you have any queries or require clarifications, please let us know in the comments section below. You can also contact us through our support forums, Direct-Trac, or feedback portal. We are always happy to assist you!