在我的应用程序中,我有2个按钮,允许用户通过“名称”或“分数”对单元格进行排序。我遇到了排序问题 - 我如何检查单元格是否已经通过这两个类别排序。单击按钮后,对UITableViewSource中的单元格进行排序。 c#Xamarin
我是Xamarin的新人,至今我都没有提出任何问题。
我已经排序列表并获得通用结果,但仅用于第一次排序,即升序。提前
nameSort.TouchUpInside += (sender, e) =>
{
Sort(ascending, "name");
tableView.ReloadData();
};
scoreSort.TouchUpInside += (sender, e) =>
{
Sort(ascending, "score");
tableView.ReloadData();
};
感谢:
而且这并没有为我工作:
var orderedByAsc = list.OrderBy(l => l.name);
if (list.SequenceEqual(orderedByAsc))
{
ascending = true;
}
var orderedByDsc = list.OrderByDescending(l => l.name);
if (list.SequenceEqual(orderedByDsc))
{
ascending = false;
}
排序:
void Sort(bool ascending, string type)
{
if (type.Equals("name"))
{
if (ascending)
{
list.Sort((x, y) => x.name.CompareTo(y.name));
}
else
{
list.Sort((x, y) => -1 * x.name.CompareTo(y.name));
}
}
else
{
if (ascending)
{
list.Sort((x, y) => x.score.CompareTo(y.score));
}
else
{
list.Sort((x, y) => -1 * x.score.CompareTo(y.score));
}
}
}
按钮事件!