Я не проверял ваш код, но кажется, что ваш код не работает, потому что метод date1.CompareTo не возвращает значения -1, 0 или 1.Он может возвращать значения меньше нуля, равные ему и больше нуля.
Проверьте значение свойства e.Result, поскольку он может принимать только эти три числа.
Кстати,Я вижу, что у вас есть дата в буквальном формате и вы пытаетесь преобразовать строку на лету.Я думаю, что вам может быть проще создать несвязанный столбец, который должен преобразовывать даты в соответствующий формат, чтобы вас не беспокоило написание собственного обработчика событий сортировки.
Спасибо,
Vest (поддержка DevExpress)