私は WPF を使用しており、豊富な機能を備えたツリーなどで構成される複雑なユーザー コントロールを開発しています。この目的のために、WPF で直接実行できない操作があるため、View-Model デザイン パターンを使用しました。そこで、IHierarchyItem (ノードであり、このコンストラクターに渡してツリー構造を作成します) を取得します。
private IHierarchyItemViewModel(IHierarchyItem hierarchyItem, IHierarchyItemViewModel parent)
{
this.hierarchyItem = hierarchyItem;
this.parent = parent;
List<IHierarchyItemViewModel> l = new List<IHierarchyItemViewModel>();
foreach (IHierarchyItem item in hierarchyItem.Children)
{
l.Add(new IHierarchyItemViewModel(item, this));
}
children = new ReadOnlyCollection<IHierarchyItemViewModel>(l);
}
問題は、このコンストラクターに約 3 秒かかることです!! 私のデュアルコアで200アイテム。私は何か間違ったことをしていますか、それとも再帰的なコンストラクター呼び出しは遅いですか? どうもありがとうございました!