/// <summary>
 /// Raises the ExpandNode event.
 /// </summary>
 /// <param name="e">A CTreeViewEventArgs that contains the event data</param>
 protected internal virtual void OnExpandNode(CTreeViewEventArgs e)
 {
     Recalculate();
     if (ExpandNode != null)
     {
         ExpandNode(this, e);
     }
 }
 /// <summary>
 /// Raises the CollapseNode event.
 /// </summary>
 /// <param name="e">A CTreeViewEventArgs that contains the event data.</param>
 protected internal virtual void OnCollapseNode(CTreeViewEventArgs e)
 {
     Recalculate();
     if (CollapseNode != null)
     {
         CollapseNode(this, e);
     }
 }
 /// <summary>
 /// Raises the SelectNode event.
 /// </summary>
 /// <param name="e">A CTreeViewEventArgs that contains the event data</param>
 protected internal virtual void OnSelectNode(CTreeViewEventArgs e)
 {
     //ParentCTreeView.Invalidate();
     //ParentCTreeView.Update();
     OwnerCTreeView.Refresh();
     if (SelectNode != null)
     {
         SelectNode(this, e);
     }
 }