public MainViewDirver(dynamic mainView)
        {
            var w = new WindowControl(mainView);

            //指定のオブジェクトを起点とした
            //ロジカルツリー中にあるLhsというパスにバインドされている要素のコレクション
            //Identifyは一つだけであることを保障する
            //コレクションの要素が1以外だった場合は例外発生
            w.LogicalTree().ByBinding("Lhs").Identify();

            //ビジュアルツリーでは、こんな感じで書く
            w.VisualTree().ByBinding("Lhs").Identify();

            //データアイテムを指定して、さらに厳密な指定にできる
            var dataItem = new ExplicitVar(w.Dynamic().DataContext);

            w.LogicalTree().ByBinding("Lhs", dataItem).Identify();


            Lhs              = new WPFTextBox(w.LogicalTree().ByBinding("Lhs").Identify());
            CalculateTypes   = new WPFComboBox(w.LogicalTree().ByBinding("CalculateTypes").Identify());
            Rhs              = new WPFTextBox(w.LogicalTree().ByBinding("Rhs").Identify());
            CalculateCommand = new WPFButtonBase(w.LogicalTree().ByBinding("CalculateCommand").Identify());
            Answer           = w.LogicalTree().ByBinding("Answer").Identify().Dynamic();
        }
 public static WPFDependencyObjectCollection ByBinding(this WPFDependencyObjectCollection collection, string path, ExplicitVar dataItem = null)
 {
     return(new WPFDependencyObjectCollection(collection.AppVar.App.Type(typeof(BindingSearchExtensions)).ByBindingCore(collection, dataItem, path)));
 }