public virtual void AssociateWithTreeViewItems()
        {
            TreeViewItemCheckBox c1 = new TreeViewItemCheckBox {
                Content = "First"
            };
            TreeViewItemCheckBox c2 = new TreeViewItemCheckBox {
                Content = "Second"
            };
            TreeViewItemCheckBox c3 = new TreeViewItemCheckBox {
                Content = "Third"
            };
            TreeViewItemCheckBox c4 = new TreeViewItemCheckBox {
                Content = "Fourth"
            };
            TreeViewItemCheckBox c5 = new TreeViewItemCheckBox {
                Content = "Fifth"
            };
            TreeViewItem t1, t2, t3, t4, t5;
            TreeView     view = new TreeViewBuilder()
                                .Items(c1).Expand().Named(out t1)
                                .Items(c2).Expand().Named(out t2)
                                .Item(c3).Expand().Named(out t3).Set(t => t.SetIsChecked(true))
                                .Item(c4).Expand().Named(out t4)
                                .EndItems()
                                .EndItems()
                                .Item(c5).Named(out t5).Set(t => t.SetIsChecked(true));

            TestAsync(
                view,
                () => Assert.AreEqual(t1.GetIsChecked(), c1.IsChecked, "First didn't match!"),
                () => Assert.AreEqual(t2.GetIsChecked(), c2.IsChecked, "Second didn't match!"),
                () => Assert.AreEqual(t3.GetIsChecked(), c3.IsChecked, "Third didn't match!"),
                () => Assert.AreEqual(t4.GetIsChecked(), c4.IsChecked, "Fourth didn't match!"),
                () => Assert.AreEqual(t5.GetIsChecked(), c5.IsChecked, "Fifth didn't match!"));
        }
        public virtual void AssociateWithTreeViewItems()
        {
            TreeViewItemCheckBox c1 = new TreeViewItemCheckBox { Content = "First" };
            TreeViewItemCheckBox c2 = new TreeViewItemCheckBox { Content = "Second" };
            TreeViewItemCheckBox c3 = new TreeViewItemCheckBox { Content = "Third" };
            TreeViewItemCheckBox c4 = new TreeViewItemCheckBox { Content = "Fourth" };
            TreeViewItemCheckBox c5 = new TreeViewItemCheckBox { Content = "Fifth" };
            TreeViewItem t1, t2, t3, t4, t5;
            TreeView view = new TreeViewBuilder()
                .Items(c1).Expand().Named(out t1)
                    .Items(c2).Expand().Named(out t2)
                        .Item(c3).Expand().Named(out t3).Set(t => t.SetIsChecked(true))
                        .Item(c4).Expand().Named(out t4)
                    .EndItems()
                .EndItems()
                .Item(c5).Named(out t5).Set(t => t.SetIsChecked(true));

            TestAsync(
                view,
                () => Assert.AreEqual(t1.GetIsChecked(), c1.IsChecked, "First didn't match!"),
                () => Assert.AreEqual(t2.GetIsChecked(), c2.IsChecked, "Second didn't match!"),
                () => Assert.AreEqual(t3.GetIsChecked(), c3.IsChecked, "Third didn't match!"),
                () => Assert.AreEqual(t4.GetIsChecked(), c4.IsChecked, "Fourth didn't match!"),
                () => Assert.AreEqual(t5.GetIsChecked(), c5.IsChecked, "Fifth didn't match!"));
        }