public virtual void BeginWebPartEditing(WebPart webPart)
 {
     this.Personalization.EnsureEnabled(true);
     if (webPart == null)
     {
         throw new ArgumentNullException("webPart");
     }
     if (webPart.IsClosed)
     {
         throw new ArgumentException(System.Web.SR.GetString("WebPartManager_CantBeginEditingClosed"), "webPart");
     }
     if (!this.Controls.Contains(webPart))
     {
         throw new ArgumentException(System.Web.SR.GetString("UnknownWebPart"), "webPart");
     }
     if (this.DisplayMode != EditDisplayMode)
     {
         throw new InvalidOperationException(System.Web.SR.GetString("WebPartManager_MustBeInEdit"));
     }
     if (webPart == this.SelectedWebPart)
     {
         throw new ArgumentException(System.Web.SR.GetString("WebPartManager_AlreadyInEdit"), "webPart");
     }
     WebPartCancelEventArgs e = new WebPartCancelEventArgs(webPart);
     this.OnSelectedWebPartChanging(e);
     if (!this._allowEventCancellation || !e.Cancel)
     {
         if (this.SelectedWebPart != null)
         {
             this.EndWebPartEditing();
             if (this.SelectedWebPart != null)
             {
                 return;
             }
         }
         this.SetSelectedWebPart(webPart);
         this.Internals.CallOnEditModeChanged(webPart);
         this.OnSelectedWebPartChanged(new WebPartEventArgs(webPart));
     }
 }
 private void CloseOrDeleteWebPart(WebPart webPart, bool delete)
 {
     this.Personalization.EnsureEnabled(true);
     if (webPart == null)
     {
         throw new ArgumentNullException("webPart");
     }
     if (!this.Controls.Contains(webPart))
     {
         throw new ArgumentException(System.Web.SR.GetString("UnknownWebPart"), "webPart");
     }
     if (!delete && webPart.IsClosed)
     {
         throw new ArgumentException(System.Web.SR.GetString("WebPartManager_AlreadyClosed"), "webPart");
     }
     if (delete)
     {
         if (webPart.IsStatic)
         {
             throw new ArgumentException(System.Web.SR.GetString("WebPartManager_CantDeleteStatic"), "webPart");
         }
         if (webPart.IsShared && (this.Personalization.Scope == PersonalizationScope.User))
         {
             throw new ArgumentException(System.Web.SR.GetString("WebPartManager_CantDeleteSharedInUserScope"), "webPart");
         }
     }
     WebPartCancelEventArgs e = new WebPartCancelEventArgs(webPart);
     if (delete)
     {
         this.OnWebPartDeleting(e);
     }
     else
     {
         this.OnWebPartClosing(e);
     }
     if (!this._allowEventCancellation || !e.Cancel)
     {
         if ((this.DisplayMode == ConnectDisplayMode) && (webPart == this.SelectedWebPart))
         {
             this.EndWebPartConnecting();
             if (this.SelectedWebPart != null)
             {
                 return;
             }
         }
         if ((this.DisplayMode == EditDisplayMode) && (webPart == this.SelectedWebPart))
         {
             this.EndWebPartEditing();
             if (this.SelectedWebPart != null)
             {
                 return;
             }
         }
         if (delete)
         {
             this.Internals.CallOnDeleting(webPart);
         }
         else
         {
             this.Internals.CallOnClosing(webPart);
         }
         if (!webPart.IsClosed)
         {
             this.RemoveWebPartFromZone(webPart);
         }
         this.DisconnectWebPart(webPart);
         if (delete)
         {
             this.Internals.RemoveWebPart(webPart);
             this.OnWebPartDeleted(new WebPartEventArgs(webPart));
         }
         else
         {
             this.OnWebPartClosed(new WebPartEventArgs(webPart));
         }
     }
 }
 public virtual void EndWebPartEditing()
 {
     this.Personalization.EnsureEnabled(true);
     WebPart selectedWebPart = this.SelectedWebPart;
     if (selectedWebPart == null)
     {
         throw new InvalidOperationException(System.Web.SR.GetString("WebPartManager_NoSelectedWebPartEdit"));
     }
     WebPartCancelEventArgs e = new WebPartCancelEventArgs(selectedWebPart);
     this.OnSelectedWebPartChanging(e);
     if (!this._allowEventCancellation || !e.Cancel)
     {
         this.SetSelectedWebPart(null);
         this.Internals.CallOnEditModeChanged(selectedWebPart);
         this.OnSelectedWebPartChanged(new WebPartEventArgs(null));
     }
 }
 protected virtual void OnWebPartDeleting(WebPartCancelEventArgs e)
 {
     WebPartCancelEventHandler handler = (WebPartCancelEventHandler) base.Events[WebPartDeletingEvent];
     if (handler != null)
     {
         handler(this, e);
     }
 }
 protected virtual new void OnSelectedWebPartChanging(WebPartCancelEventArgs e)
 {
 }
 protected virtual new void OnWebPartDeleting(WebPartCancelEventArgs e)
 {
 }
Exemplo n.º 7
0
        public virtual void EndWebPartEditing() {
            Personalization.EnsureEnabled(/* ensureModifiable */ true);

            WebPart selectedWebPart = SelectedWebPart;

            if (selectedWebPart == null) {
                throw new InvalidOperationException(SR.GetString(SR.WebPartManager_NoSelectedWebPartEdit));
            }

            WebPartCancelEventArgs ce = new WebPartCancelEventArgs(selectedWebPart);
            OnSelectedWebPartChanging(ce);

            if (_allowEventCancellation && ce.Cancel) {
                return;
            }

            SetSelectedWebPart(null);

            Internals.CallOnEditModeChanged(selectedWebPart);

            // The EventArg should always contain the new SelectedWebPart, so it should contain null
            // when we are ending editing.
            OnSelectedWebPartChanged(new WebPartEventArgs(null));
        }
Exemplo n.º 8
0
 protected virtual void OnSelectedWebPartChanging(WebPartCancelEventArgs e) {
     WebPartCancelEventHandler handler = (WebPartCancelEventHandler)Events[SelectedWebPartChangingEvent];
     if (handler != null) {
         handler(this, e);
     }
 }
Exemplo n.º 9
0
        private void CloseOrDeleteWebPart(WebPart webPart, bool delete) {
            Personalization.EnsureEnabled(/* ensureModifiable */ true);

            if (webPart == null) {
                throw new ArgumentNullException("webPart");
            }
            if (!Controls.Contains(webPart)) {
                throw new ArgumentException(SR.GetString(SR.UnknownWebPart), "webPart");
            }

            if (!delete && webPart.IsClosed) {
                // Throw an exception instead of just returning.  If the shared user and per user close
                // a WebPart at the same time, then the WebPartZoneBase should not call CloseWebPart
                // if the WebPart is now closed.
                throw new ArgumentException(SR.GetString(SR.WebPartManager_AlreadyClosed), "webPart");
            }

            if (delete) {
                if (webPart.IsStatic) {
                    // Can't delete static parts
                    throw new ArgumentException(SR.GetString(SR.WebPartManager_CantDeleteStatic), "webPart");
                }
                else if (webPart.IsShared && (Personalization.Scope == PersonalizationScope.User)) {
                    // Can't delete shared part in user scope
                    throw new ArgumentException(SR.GetString(SR.WebPartManager_CantDeleteSharedInUserScope), "webPart");
                }
            }

            WebPartCancelEventArgs ce = new WebPartCancelEventArgs(webPart);
            if (delete) {
                OnWebPartDeleting(ce);
            }
            else {
                OnWebPartClosing(ce);
            }
            if (_allowEventCancellation && ce.Cancel) {
                return;
            }

            if ((DisplayMode == ConnectDisplayMode) && (webPart == SelectedWebPart)) {
                EndWebPartConnecting();
                if (SelectedWebPart != null) {
                    // The ConnectModeChange was cancelled
                    return;
                }
            }

            // VSWhidbey 77768
            if ((DisplayMode == EditDisplayMode) && (webPart == SelectedWebPart)) {
                EndWebPartEditing();
                if (SelectedWebPart != null) {
                    // The EditModeChange was cancelled
                    return;
                }
            }

            if (delete) {
                Internals.CallOnDeleting(webPart);
            }
            else {
                Internals.CallOnClosing(webPart);
            }

#if DEBUG
            WebPartZoneBase zone = webPart.Zone;
#endif

            // If we are deleting a closed WebPart, it has already been removed from
            // its Zone, so there is no need to do it again.
            if (!webPart.IsClosed) {
                RemoveWebPartFromZone(webPart);
            }

            DisconnectWebPart(webPart);

            if (delete) {
                Internals.RemoveWebPart(webPart);

                // Raise the WebPartDeleted event after changing the WebPart properties
                // The WebPartDeleting event is raised before changing the WebPart properties
                OnWebPartDeleted(new WebPartEventArgs(webPart));
            }
            else {
                // Raise the WebPartClosed event after changing the WebPart properties
                // The WebPartClosing event is raised before changing the WebPart properties
                OnWebPartClosed(new WebPartEventArgs(webPart));
            }

#if DEBUG
            if (zone != null) {
                CheckPartZoneIndexes(zone);
            }
#endif
        }
Exemplo n.º 10
0
        public virtual void BeginWebPartEditing(WebPart webPart) {
            Personalization.EnsureEnabled(/* ensureModifiable */ true);

            if (webPart == null) {
                throw new ArgumentNullException("webPart");
            }

            if (webPart.IsClosed) {
                throw new ArgumentException(SR.GetString(SR.WebPartManager_CantBeginEditingClosed), "webPart");
            }

            if (!Controls.Contains(webPart)) {
                throw new ArgumentException(SR.GetString(SR.UnknownWebPart), "webPart");
            }

            if (DisplayMode != EditDisplayMode) {
                throw new InvalidOperationException(SR.GetString(SR.WebPartManager_MustBeInEdit));
            }

            if (webPart == SelectedWebPart) {
                throw new ArgumentException(SR.GetString(SR.WebPartManager_AlreadyInEdit), "webPart");
            }

            WebPartCancelEventArgs ce = new WebPartCancelEventArgs(webPart);
            OnSelectedWebPartChanging(ce);
            if (_allowEventCancellation && ce.Cancel) {
                return;
            }

            if (SelectedWebPart != null) {
                EndWebPartEditing();
                if (SelectedWebPart != null) {
                    // The EditModeChange was cancelled
                    return;
                }
            }

            SetSelectedWebPart(webPart);

            Internals.CallOnEditModeChanged(webPart);

            OnSelectedWebPartChanged(new WebPartEventArgs(webPart));
        }
Exemplo n.º 11
0
 private void WebPartManager_WebPartDeleting(object sender, WebPartCancelEventArgs e)
 {
     WebPart part = e.WebPart;
     if (part != null && !(part is ISymbolWebPart) && part.Zone == this)
     {
         base.WebPartManager.AddWebPart(this.CreateEmptyWebPart(), part.Zone, part.ZoneIndex);
     }
 }
 protected virtual new void OnWebPartDeleting(WebPartCancelEventArgs e)
 {
 }
 protected virtual new void OnSelectedWebPartChanging(WebPartCancelEventArgs e)
 {
 }