如何在generics集合上创建扩展方法

我有一个包含FrameworkElements的列表,我想创建一个名为MoveToTop的扩展方法。 所有这一切都将接受属于该列表的项目并将其移动到列表的开头。 我知道这可以在不使用扩展方法的情况下完成,但我希望它可以作为扩展方法实现。

我无法弄清楚创建接受generics参数的扩展方法的语法。 我知道这不正确,但如果有人能告诉我如何实现这一目标,我将不胜感激。

public static class Extensions { public static void MoveToTop(this ICollection sequence) { //logic for moving the item goes here. } } 

你很近,只需在括号前的方法名后面加 。 这就是放置generics方法的generics类型参数列表的位置。 它声明了方法将接受的generics类型参数,然后使它们可用于参数,返回值和方法体。

 public static class Extensions { public static void MoveToTop(this ICollection sequence) { //logic for moving the item goes here. } }