本文整理汇总了C#中System.Activities.Presentation.Model.ModelItem.GetParentEnumerator方法的典型用法代码示例。如果您正苦于以下问题:C# ModelItem.GetParentEnumerator方法的具体用法?C# ModelItem.GetParentEnumerator怎么用?C# ModelItem.GetParentEnumerator使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Activities.Presentation.Model.ModelItem
的用法示例。
在下文中一共展示了ModelItem.GetParentEnumerator方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: FindCommonVariableScope
internal static ModelItem FindCommonVariableScope(ModelItem scope1, ModelItem scope2)
{
if (null == scope1 || null == scope2)
{
throw FxTrace.Exception.AsError(new ArgumentNullException(null == scope1 ? "scope1" : "scope2"));
}
var scope1List = scope1.GetParentEnumerator().Where(p => null != VariableHelper.GetVariableCollection(p)).ToList();
var scope2List = scope2.GetParentEnumerator().Where(p => null != VariableHelper.GetVariableCollection(p)).ToList();
if (null != VariableHelper.GetVariableCollection(scope1))
{
scope1List.Insert(0, scope1);
}
if (null != VariableHelper.GetVariableCollection(scope2))
{
scope2List.Insert(0, scope2);
}
if (scope1 == scope2)
{
return scope1List.FirstOrDefault();
}
return scope1List.Intersect(scope2List).FirstOrDefault();
}
示例2: FindRootVariableScope
internal static ModelItem FindRootVariableScope(ModelItem element)
{
if (null == element)
{
throw FxTrace.Exception.ArgumentNull("element");
}
ModelItem result = element.GetParentEnumerator().Where(p => null != VariableHelper.GetVariableCollection(p)).LastOrDefault();
return result;
}