根據合成模式 建立treeview

2021-06-15 20:51:45 字數 2456 閱讀 5967

using system;

using system.collections;

namespace   base

}using system;

using system.collections ;

namespace   base

///

/// component

/// 抽象類

///

public abstract class componentsafe:idisposable

get}

///

/// 屬性 節點資料

/// 使用者獲得、設定節點資料內容

///

public virtual modelbase_beat model

get}

///

/// 屬性 節點所在樹位置索引

/// [0][0][0] -> 0.0.0

///

public string currentindex

set

}#endregion

#region 建構函式

///

/// 建構函式

///

/// 節點名稱

public componentsafe( string name )

#endregion

#region 共有方法

///

/// 得到節點名稱

///

///

public string getcaption()

///

/// 得到本節點資料

///

///

public modelbase_beat getmodel()

#endregion

abstract public ienumerator getsubordinates();

#region 釋放資源

// other managed resource this class uses.

private component component = new component();

// pointer to an external unmanaged resource.

private intptr handle;

// track whether dispose has been called.

private bool disposed = false;

// use c# destructor syntax for finalization code.

// this destructor will run only if the dispose method

// does not get called.

// it gives your base class the opportunity to finalize.

// do not provide destructors in types derived from this class.

~componentsafe()     

#endregion

}///

/// composite

/// 樹枝

///

public class compositesafe : componentsafe

///

/// 增加子項

///

///

public  void add( componentsafe component )

///

/// 刪除子項

///

///

public  void remove( componentsafe component )

///

/// 得到子項的列舉

///

///

public override ienumerator getsubordinates()

}///

/// leaf

/// 葉子

///

public class leafsafe : componentsafe

public override ienumerator getsubordinates()

}///

/// 樹節點

/// 繼承treenode 新增自己的屬性

///

public class displaynodesafe:system.windows.forms.treenode    

get}

///

/// 設定節點物件的資料

///

///

public displaynodesafe(componentsafe cmp )

}namespace   base

ruby設計模式之合成模式1 基本的合成模式

前幾天在 戲說設計模式 這篇文章中看到了一段關於組合模式的描述 composite mary今天過生日。我過生日,你要送我一件禮物。嗯,好吧,去商店,你自己挑。這件t恤挺漂亮,買,這條裙子好看,買,這個包也不錯,買。喂,買了三件了呀,我只答應送一件禮物的哦。什麼呀,t恤加裙子加包包,正好配成一套呀,...

ruby設計模式之合成模式1 基本的合成模式

前幾天在 戲說設計模式 這篇文章中看到了一段關於組合模式的描述 composite mary今天過生日。我過生日,你要送我一件禮物。嗯,好吧,去商店,你自己挑。這件t恤挺漂亮,買,這條裙子好看,買,這個包也不錯,買。喂,買了三件了呀,我只答應送一件禮物的哦。什麼呀,t恤加裙子加包包,正好配成一套呀,...

《java與模式》 12 合成模式

合成模式屬於物件的結構模式 使客戶端將單純元素與復合元素同等看待 角色 抽象構件角色 樹枝角色 樹葉角色 其中樹枝角色可以有子節點,樹葉角色不可以有子節點,如果根節點是樹葉角色那麼就變成了只有乙個節點的樹 合成模式根據所實現的介面分為兩種形式 安全式 透明式 合成模式可以不提供父物件的管理方法,但是...