You've already forked linux-packaging-mono
							
							
		
			
				
	
	
		
			105 lines
		
	
	
		
			3.5 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			105 lines
		
	
	
		
			3.5 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
| //------------------------------------------------------------------------------
 | |
| // <copyright file="ErrorWebPart.cs" company="Microsoft">
 | |
| //     Copyright (c) Microsoft Corporation.  All rights reserved.
 | |
| // </copyright>
 | |
| //------------------------------------------------------------------------------
 | |
| 
 | |
| namespace System.Web.UI.WebControls.WebParts {
 | |
| 
 | |
|     using System;
 | |
|     using System.Collections;
 | |
|     using System.ComponentModel;
 | |
|     using System.Drawing;
 | |
|     using System.Globalization;
 | |
|     using System.Web.UI;
 | |
|     using System.Web.UI.WebControls;
 | |
|     using System.Web.Util;
 | |
| 
 | |
|     [
 | |
|     ToolboxItem(false)
 | |
|     ]
 | |
|     public class ErrorWebPart : ProxyWebPart, ITrackingPersonalizable {
 | |
| 
 | |
|         private string _errorMessage;
 | |
| 
 | |
|         // No constructor that takes a WebPart, since we ony use the ErrorWebPart when the original
 | |
|         // WebPart could not be instantiated.
 | |
| 
 | |
|         public ErrorWebPart(string originalID, string originalTypeName, string originalPath, string genericWebPartID) :
 | |
|             base(originalID, originalTypeName, originalPath, genericWebPartID) {
 | |
|         }
 | |
| 
 | |
|         public string ErrorMessage {
 | |
|             get {
 | |
|                 return (_errorMessage != null) ? _errorMessage : String.Empty;
 | |
|             }
 | |
|             set {
 | |
|                 _errorMessage = value;
 | |
|             }
 | |
|         }
 | |
| 
 | |
|         protected override void AddAttributesToRender(HtmlTextWriter writer) {
 | |
|             WebPartZoneBase zone = Zone;
 | |
|             if (zone != null && !zone.ErrorStyle.IsEmpty) {
 | |
|                 zone.ErrorStyle.AddAttributesToRender(writer, this);
 | |
|             }
 | |
| 
 | |
|             base.AddAttributesToRender(writer);
 | |
|         }
 | |
| 
 | |
|         // Can be overridden by derived classes to set properties
 | |
|         protected virtual void EndLoadPersonalization() {
 | |
|             // We don't really need to set AllowEdit, since EditorPart.Display has
 | |
|             // a special case for ErrorWebPart.  However, let's set it to false anyway
 | |
|             // for consistency.
 | |
|             AllowEdit = false;
 | |
| 
 | |
|             // We want to force the user to see the ErrorWebPart, and we don't want to allow
 | |
|             // them to hide or minimize it.
 | |
|             ChromeState = PartChromeState.Normal;
 | |
|             Hidden = false;
 | |
|             AllowHide = false;
 | |
|             AllowMinimize = false;
 | |
| 
 | |
|             // There is no reason to allow exporting an ErrorWebPart.
 | |
|             ExportMode = WebPartExportMode.None;
 | |
| 
 | |
|             // We never call IsAuthorized() on ErrorWebParts, so there is no reason for
 | |
|             // AuthorizationFilter to be set.
 | |
|             AuthorizationFilter = String.Empty;
 | |
|         }
 | |
| 
 | |
|         protected internal override void RenderContents(HtmlTextWriter writer) {
 | |
|             string errorMessage = ErrorMessage;
 | |
|             if (!String.IsNullOrEmpty(errorMessage)) {
 | |
|                 writer.WriteEncodedText(SR.GetString(SR.ErrorWebPart_ErrorText, errorMessage));
 | |
|             }
 | |
|         }
 | |
| 
 | |
|         #region ITrackingPersonalizable implementation
 | |
|         // It doesn't really matter what we return from this property, since this codepath will
 | |
|         // never be reached for the ErrorWebPart.  However, we return true since we will never need
 | |
|         // the framework to diff our properties.
 | |
|         bool ITrackingPersonalizable.TracksChanges {
 | |
|             get {
 | |
|                 return true;
 | |
|             }
 | |
|         }
 | |
| 
 | |
|         void ITrackingPersonalizable.BeginLoad() {
 | |
|         }
 | |
| 
 | |
|         void ITrackingPersonalizable.BeginSave() {
 | |
|         }
 | |
| 
 | |
|         void ITrackingPersonalizable.EndLoad() {
 | |
|             EndLoadPersonalization();
 | |
|         }
 | |
| 
 | |
|         void ITrackingPersonalizable.EndSave() {
 | |
|         }
 | |
|         #endregion
 | |
|     }
 | |
| }
 | |
| 
 |