Esempio n. 1
0
        /// <summary>
        /// Handles invocation of CompareElementsEvent events
        /// </summary>
        internal bool DoCompareElementsEvent(GridPanel panel,
            GridElement a, GridElement b, ref int result)
        {
            if (CompareElements != null)
            {
                GridCompareElementsEventArgs ev = new
                    GridCompareElementsEventArgs(panel, a, b);

                CompareElements(this, ev);

                result = ev.Result;

                return (ev.Cancel);
            }

            return (false);
        }
Esempio n. 2
0
        private void uiWeeklyDataTable_CompareElements(object sender, GridCompareElementsEventArgs e)
        {
            var a = e.ElementA as GridCell;
            var b = e.ElementB as GridCell;

            if (a != null && b != null && (a.Value is string && (a.ColumnIndex == 1 || a.ColumnIndex == 2 || a.ColumnIndex == 3)))
            {
                e.Cancel = true;
                var aValue = DateTime.ParseExact(a.Value.ToString(), DateFormatsManager.CurrentShortDateFormat + " HH:mm:ss", CultureInfo.InvariantCulture);
                var bValue = DateTime.ParseExact(b.Value.ToString(), DateFormatsManager.CurrentShortDateFormat + " HH:mm:ss", CultureInfo.InvariantCulture);
                    if (aValue > bValue)
                        e.Result = 1;
                    else
                        if (aValue < bValue)
                        {
                            e.Result = -1;
                        }
                        else
                            e.Result = 0;
            }
        }