本文整理汇总了C#中ISelectable.GetSiblings方法的典型用法代码示例。如果您正苦于以下问题:C# ISelectable.GetSiblings方法的具体用法?C# ISelectable.GetSiblings怎么用?C# ISelectable.GetSiblings使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ISelectable
的用法示例。
在下文中一共展示了ISelectable.GetSiblings方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ShiftSelect
private static void ShiftSelect(this ISelectionService selectionService, ISelectable selectable)
{
var siblings = selectable.GetSiblings();
//See if there are any non sibinglings that need to be
var nonSiblingSelected = selectionService.GetSelected()
.Where(s => !siblings.Contains(s))
.ToArray();
foreach (var toUnselect in nonSiblingSelected)
{
selectionService.Unselect(toUnselect);
}
//Now, only existing siblings should be selected
var selected = selectionService.GetSelected();
//If there are none selected, then select all of the sibings up to this one
if (!selected.Any())
{
foreach (var sibling in siblings)
{
selectionService.Select(sibling);
if (sibling == selectable)
break;
}
}
else
{
//Do a range selection
selectionService.SelectBetween(siblings, selectable, selected.LastOrDefault());
}
}