📄 directorycollection.cs
字号:
using System;
using System.Collections;
namespace SourceFtp.FileSystem
{
/// <summary>
/// Summary description for DirectoryCollection.
/// </summary>
public class DirectoryCollection : ICollection
{
private ArrayList m_List = new ArrayList();
private ILibrary m_Library;
private Directory m_Parent;
public DirectoryCollection(ILibrary p_Library, Directory p_Parent)
{
m_Parent = p_Parent;
m_Library = p_Library;
}
public int ListAdd(Directory p_Dir)
{
return m_List.Add(p_Dir);
}
public void ListRemove(Directory p_Dir)
{
m_List.Remove(p_Dir);
}
public Directory Add(string p_Name)
{
return m_Library.AddSubDirectory(m_Parent,p_Name);
}
/// <summary>
/// Remove a sub directory
/// </summary>
/// <param name="p_Directory"></param>
public void Remove(Directory p_Directory)
{
if (Contains(p_Directory)== false)
throw new ApplicationException("Directory not valid");
m_Library.RemoveSubDirectory(p_Directory);
}
public Directory this[int p_Index]
{
get{return (Directory)m_List[p_Index];}
}
public bool Contains(Directory p_Dir)
{
return m_List.Contains(p_Dir);
}
public bool Contains(string p_DirectoryName)
{
foreach (Directory d in this)
{
if (d.Name.ToUpper() == p_DirectoryName.ToUpper())
return true;
}
return false;
}
#region ICollection Members
public bool IsSynchronized
{
get
{
return m_List.IsSynchronized;
}
}
public int Count
{
get
{
return m_List.Count;
}
}
public void CopyTo(Array array, int index)
{
m_List.CopyTo(array,index);
}
public object SyncRoot
{
get
{
return m_List.SyncRoot;
}
}
#endregion
#region IEnumerable Members
public IEnumerator GetEnumerator()
{
return m_List.GetEnumerator();
}
#endregion
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -