本文整理汇总了C#中System.Windows.Controls.ContentControl.VisualTreeDepthFirstTraversal方法的典型用法代码示例。如果您正苦于以下问题:C# ContentControl.VisualTreeDepthFirstTraversal方法的具体用法?C# ContentControl.VisualTreeDepthFirstTraversal怎么用?C# ContentControl.VisualTreeDepthFirstTraversal使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Windows.Controls.ContentControl
的用法示例。
在下文中一共展示了ContentControl.VisualTreeDepthFirstTraversal方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Branch
private static BranchResult Branch(Orientation orientation, double proportion, bool makeSecond, DataTemplate branchTemplate, object existingContent, Action<Branch> applier)
{
var branchItem = new Branch
{
Orientation = orientation
};
var newContent = new ContentControl
{
Content = new object(),
ContentTemplate = branchTemplate,
};
if (!makeSecond)
{
branchItem.FirstItem = existingContent;
branchItem.SecondItem = newContent;
}
else
{
branchItem.FirstItem = newContent;
branchItem.SecondItem = existingContent;
}
branchItem.SetCurrentValue(Dockablz.Branch.FirstItemLengthProperty, new GridLength(proportion, GridUnitType.Star));
branchItem.SetCurrentValue(Dockablz.Branch.SecondItemLengthProperty, new GridLength(1-proportion, GridUnitType.Star));
applier(branchItem);
newContent.Dispatcher.Invoke(new Action(() => { }), DispatcherPriority.Loaded);
var newTabablzControl = newContent.VisualTreeDepthFirstTraversal().OfType<TabablzControl>().FirstOrDefault();
if (newTabablzControl == null)
throw new ApplicationException("New TabablzControl was not generated inside branch.");
return new BranchResult(branchItem, newTabablzControl);
}