コード例 #1
0
    //
    static public void SortDataGridViewColumnNumericThenAlpha(this DataGridViewSortCompareEventArgs e, string removetext = null)
    {
        string left  = e.CellValue1?.ToString();
        string right = e.CellValue2?.ToString();
        var    datal = ObjectExtensionsStringsCompare.ReadNumeric(left, removetext);
        var    datar = ObjectExtensionsStringsCompare.ReadNumeric(right, removetext);

        if (datal.Item2 == false && datar.Item2 == false)
        {
            if (left == null)
            {
                e.SortResult = 1;
            }
            else if (right == null)
            {
                e.SortResult = -1;
            }
            else
            {
                e.SortResult = left.CompareTo(right);
            }
        }
        else if (datal.Item2 == false)
        {
            e.SortResult = 1;
        }
        else if (datar.Item2 == false)
        {
            e.SortResult = -1;
        }
        else
        {
            e.SortResult = datal.Item1.CompareTo(datar.Item1);
        }
        e.Handled = true;
    }
コード例 #2
0
 public int Compare(string x, string y)
 {
     return(ObjectExtensionsStringsCompare.CompareAlphaInt(x, y));
 }