protected override void OnLayoutComplete(ViewItem sender, EventArgs args)
 {
     this._weasel.Invoke("OnLayoutComplete", new object[] { sender, args });
 }
 //protected override void OnParentChanged(object nodeOldParent, object nodeNewParent)
 //{
 //    this._weasel.Invoke("OnParentChanged", new object[] { nodeOldParent, nodeNewParent });
 //}
 protected virtual void OnPreInitializationComplete(ViewItem sender, EventArgs args)
 {
     this._weasel.Invoke("OnPreInitializationComplete", new object[] { sender, args });
 }
 protected virtual object ChildForId(string strPath, out ViewItem viResult)
 {
     viResult = new ViewItem();
     return this._weasel.Invoke("ChildForId", new object[] { strPath, viResult });
 }
 protected virtual string IdForChild(ViewItem viChild)
 {
     return (string)this._weasel.Invoke("IdForChild", new object[] { viChild });
 }
        internal object FindChildFromPath(string stPath, out ViewItem viResult, out string failedComponent)
        {
            viResult = new ViewItem();
            failedComponent = string.Empty;

            return this._weasel.Invoke("FindChildFromPath", new object[] { stPath, viResult, failedComponent });
        }