static string GetTitle(AppVar e) { //タイトルを取得します。 //UserContorlから親方向にたどって見つかるLayoutDocumentControlが持っています。 //これは利用しているライブラリ(今回はXceed)の知識が必要です。 var layoutDocumentControl = e.VisualTree(TreeRunDirection.Ancestors).ByType("Xceed.Wpf.AvalonDock.Controls.LayoutDocumentControl").FirstOrDefault(); if (layoutDocumentControl == null) { return(null); } return(layoutDocumentControl.Dynamic().Model.Title); }
public void TestVisualAncestors() { var collection = ((AppVar)_ctrl._button1).VisualTree(TreeRunDirection.Ancestors); Assert.AreEqual(collection[0], _ctrl._button1); Assert.AreEqual(collection[collection.Count - 1], _app.Type <Application>().Current.MainWindow); AppVar item = ((AppVar)_ctrl._listView).VisualTree().ByType <ListViewItem>()[0]; collection = item.VisualTree(TreeRunDirection.Ancestors); Assert.AreEqual(collection[0], item); Assert.AreEqual(collection[collection.Count - 1], _app.Type <Application>().Current.MainWindow); }