本文整理汇总了C#中MindMate.Model.MapNode.RollDownAggregate方法的典型用法代码示例。如果您正苦于以下问题:C# MapNode.RollDownAggregate方法的具体用法?C# MapNode.RollDownAggregate怎么用?C# MapNode.RollDownAggregate使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类MindMate.Model.MapNode
的用法示例。
在下文中一共展示了MapNode.RollDownAggregate方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: RollDownAggregate_SetNodeTextAsDepth
public void RollDownAggregate_SetNodeTextAsDepth()
{
var r = new MapNode(new MapTree(), "r");
var c1 = new MapNode(r, "c1");
var c11 = new MapNode(c1, "c11");
var c12 = new MapNode(c1, "c12");
var c13 = new MapNode(c1, "c13");
var c2 = new MapNode(r, "c2");
var c3 = new MapNode(r, "c3", NodePosition.Left);
c3.Folded = true;
var c31 = new MapNode(c3, "c31");
var c32 = new MapNode(c3, "c32");
r.RollDownAggregate(
(n, v) =>
{
n.Text = v.ToString();
return v + 1;
},
0);
Assert.AreEqual("0", r.Text);
Assert.AreEqual("2", c13.Text);
}
示例2: RollDownAggregate_DeepestNodeUnfolded
public void RollDownAggregate_DeepestNodeUnfolded()
{
var r = new MapNode(new MapTree(), "r");
var c1 = new MapNode(r, "c1");
var c11 = new MapNode(c1, "c11");
var c12 = new MapNode(c1, "c12");
var c121 = new MapNode(c12, "c121");
var c13 = new MapNode(c1, "c13");
c13.Folded = true;
var c131 = new MapNode(c13, "c131");
var c1311 = new MapNode(c131, "c1311");
var c2 = new MapNode(r, "c2");
var c3 = new MapNode(r, "c3", NodePosition.Left);
c3.Folded = true;
var c31 = new MapNode(c3, "c31");
var c32 = new MapNode(c3, "c32");
int deepestYet = 0;
MapNode deepNodeYet = r;
r.RollDownAggregate(
(n, v) =>
{
if (v > deepestYet)
{
deepestYet = v;
deepNodeYet = n;
}
return v + 1;
},
0,
(n, v) => n.Folded
);
Assert.AreEqual(c121, deepNodeYet);
Assert.AreEqual(3, deepestYet);
}