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); } }