看了看帮助,写了写,可以排序,只是不知道是不是这样子作:)
...
using System.Collections;
...
public class MyComparer:IComparer
{
    public int Compare(object a,object b)
    { 
         SubDirectory a1=(SubDirectory)a;
         SubDirectory b1=(SubDirectory)b;
         if (a1.iFile > b1.iFile)
             return 1;
         else if (a1.iFile < b1.iFile)
             return -1;
         else return 0;
     }
}
....
MyComparer comparer=new MyComparer();
temp.Sort(comparer);
......
如果你要根据SubDirectory里的那个string字段sort的话,改写Compare
就可以了

解决方案 »

  1.   

    哈哈,差不多!!
    继承IComparer接口,重写接口函数CompareTo(object obj);
    public struct SubDirectory:IComparer
    {
        public string subDirectory;
        public int iFile;
        public CompareTo(object obj)
        {
            SubDirectory sd=(SubDirectory)obj;
            if(iFile.CompareTo(sd.iFile)!=0)
            {
               return iFile.CompareTo(sd.iFile);
            }
            else
            {
               return subDirectory.CompareTo(sd.subDirectory);
            }
        }
    }