C# 實現自己索引器

Whpitot發表於2018-01-25

C# 實現自己索引器

應用場景
在系統初始化,我們需要載入系統的所有選單顯示到介面。但又需要對單獨的某一個選單進行操作。如點選某個選單,獲取選單的連結,跳轉到該選單對應的介面。

public class MenuCollection
{
    private list<Menu> _listMenu;
    
    public MenuCollection()
    {
        //初始化_listMenu
        _listMenu = new list<Menu>();
    }
    
    public Menu this[sting finterID]
    {
        get
        {
            return _listMenu.Find(menu => menu.FInterID == finterID)
        }
    }
    
    public void Add(Menu menu)
    {
        if(!_listMenu.Contains(menu))
        {
            _listMenu.Add(menu);
            menu.MenuSet = this;
        }
    }
}

public Class Menu
{
    public string FInterID{ get; set; }
    
    public string Link{ get; set; }
    
    public MenuCollection MenuSet{ get; internal set;}
}
複製程式碼

這樣既可以從MenuCollection 中得到某一個選單類,也可以從某一個選單類得到整個選單的集合,從而相互依存,類似於DataTable 和 DataRow的關係。

相關文章