public void TestEnsureVisible()
        {
            NativeTree tree = new NativeTree(testDlg.IdentifyFromDialogId(1041));
            tree.EmulateExpand(tree.Nodes[1], true);
            IntPtr node = tree.FindNode(1, 99);
            RECT native = new RECT();
            NativeMethods.GetWindowRect(tree.Handle, out native);

            Rectangle rect = new Rectangle(0, 0, native.Right - native.Left + 1, native.Bottom - native.Top + 1);
            Assert.IsFalse(rect.Contains(tree.GetItemRect(node, false)));
            Assert.IsTrue(tree.EnsureVisible(node));
            Assert.IsTrue(rect.Contains(tree.GetItemRect(node, false)));
        }
 public void TestGetItemRect()
 {
     if (!OSUtility.Is7or8())
     {
         //矩形は環境によって変わるので7のみ。しかし、7なら常に同じ矩形とも限らない。
         //このテストデータが使えるOSの設定は限られる。
         return;
     }
     NativeTree tree = new NativeTree(testDlg.IdentifyFromDialogId(1041));
     Assert.AreEqual(new  Rectangle(0, 0, 128, 17), tree.GetItemRect(tree.Nodes[0], false));
     Assert.AreEqual(new Rectangle(35, 0, 11, 17), tree.GetItemRect(tree.Nodes[0], true));
 }