我有盒裝RegistryItem對象定義瞭如下的IComparer:「無法轉換爲IComparer的」
public class BoxedRegistryItemComparer : IComparer<object>
{
public int Compare(object left, object right)
{
RegistryItem leftReg = (RegistryItem)left;
RegistryItem rightReg = (RegistryItem)right;
return string.Compare(leftReg.Name, rightReg.Name);
}
}
我想利用這個排序盒裝RegistryItems的ArrayList(這真的應該是一個List <RegistryItem
>,但這是我無法控制的)。
ArrayList regItems = new ArrayList();
// fill up the list ...
BoxedRegistryItemComparer comparer = new BoxedRegistryItemComparer();
ArrayList.sort(comparer);
然而,最後行給出了編譯器錯誤:「無法從BoxedRegistryItemComparer轉換爲System.Collections.IComparer」。如果有人能指出我的錯誤,我將不勝感激。