internal void Sorting(string name, bool isDesc)
        {
            List <DelegationModelViewModel> temp = null;

            switch (name)
            {
            case "ContractCode":
                if (isDesc)
                {
                    temp = Delegations.OrderBy(x => x.ContractCode).ToList();;
                }
                else
                {
                    temp = Delegations.OrderByDescending(x => x.ContractCode).ToList();
                }

                break;

            case "Direction":
                if (isDesc)
                {
                    temp = Delegations.OrderBy(x => x.Direction).ToList();
                }
                else
                {
                    temp = Delegations.OrderByDescending(x => x.Direction).ToList();
                }

                break;

            case "OpenOffset":
                if (isDesc)
                {
                    temp = Delegations.OrderBy(x => x.OpenOffset).ToList();
                }
                else
                {
                    temp = Delegations.OrderByDescending(x => x.OpenOffset).ToList();
                }

                break;

            case "OrderStatus":
                if (isDesc)
                {
                    temp = Delegations.OrderBy(x => x.OrderStatus).ToList();
                }
                else
                {
                    temp = Delegations.OrderByDescending(x => x.OrderStatus).ToList();
                }

                break;

            case "OrderPrice":
                if (isDesc)
                {
                    temp = Delegations.OrderBy(x => x.OrderPrice).ToList();
                }
                else
                {
                    temp = Delegations.OrderByDescending(x => x.OrderPrice).ToList();
                }

                break;

            case "OrderVolume":
                if (isDesc)
                {
                    temp = Delegations.OrderBy(x => x.OrderVolume).ToList();
                }
                else
                {
                    temp = Delegations.OrderByDescending(x => x.OrderVolume).ToList();
                }

                break;

            case "TradeVolume":
                if (isDesc)
                {
                    temp = Delegations.OrderBy(x => x.TradeVolume).ToList();
                }
                else
                {
                    temp = Delegations.OrderByDescending(x => x.TradeVolume).ToList();
                }

                break;

            case "LeftVolume":
                if (isDesc)
                {
                    temp = Delegations.OrderBy(x => x.LeftVolume).ToList();
                }
                else
                {
                    temp = Delegations.OrderByDescending(x => x.LeftVolume).ToList();
                }

                break;

            case "OrderTime":
                if (isDesc)
                {
                    temp = Delegations.OrderBy(x => x.OrderTime).ToList();
                }
                else
                {
                    temp = Delegations.OrderByDescending(x => x.OrderTime).ToList();
                }

                break;

            case "ShadowOrderID":
                if (isDesc)
                {
                    temp = Delegations.OrderBy(x => x.ShadowOrderID).ToList();
                }
                else
                {
                    temp = Delegations.OrderByDescending(x => x.ShadowOrderID).ToList();
                }

                break;
            }

            Delegations.Clear();
            foreach (var item in temp)
            {
                Delegations.Add(item);
            }
        }