Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / DEVDIV / depot / DevDiv / releases / whidbey / QFE / ndp / fx / src / xsp / System / Web / UI / WebParts / PageCatalogPart.cs / 3 / PageCatalogPart.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.WebControls.WebParts { using System; using System.Collections; using System.Collections.Specialized; using System.ComponentModel; using System.Diagnostics; using System.Drawing; using System.Globalization; using System.Security.Permissions; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; ////// [ Designer("System.Web.UI.Design.WebControls.WebParts.PageCatalogPartDesigner, " + AssemblyRef.SystemDesign), ] [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] public sealed class PageCatalogPart : CatalogPart { private WebPartDescriptionCollection _availableWebPartDescriptions; private static readonly WebPartDescriptionCollection DesignModeAvailableWebParts = new WebPartDescriptionCollection(new WebPartDescription[] { new WebPartDescription("webpart1", String.Format(CultureInfo.CurrentCulture, SR.GetString(SR.CatalogPart_SampleWebPartTitle), "1"), null, null), new WebPartDescription("webpart2", String.Format(CultureInfo.CurrentCulture, SR.GetString(SR.CatalogPart_SampleWebPartTitle), "2"), null, null), new WebPartDescription("webpart3", String.Format(CultureInfo.CurrentCulture, SR.GetString(SR.CatalogPart_SampleWebPartTitle), "3"), null, null), }); [ WebSysDefaultValue(SR.PageCatalogPart_PartTitle), ] public override string Title { get { string s = (string)ViewState["Title"]; return (s != null) ? s : SR.GetString(SR.PageCatalogPart_PartTitle); } set { ViewState["Title"] = value; } } public override WebPartDescriptionCollection GetAvailableWebPartDescriptions() { if (DesignMode) { return DesignModeAvailableWebParts; } if (_availableWebPartDescriptions == null) { WebPartCollection availableWebParts; if (WebPartManager != null) { WebPartCollection closedWebParts = GetClosedWebParts(); if (closedWebParts != null) { availableWebParts = closedWebParts; } else { availableWebParts = new WebPartCollection(); } } else { availableWebParts = new WebPartCollection(); } ArrayList descriptions = new ArrayList(); foreach(WebPart part in availableWebParts) { // Do not show UnauthorizedWebParts ( if (part is UnauthorizedWebPart) { continue; } WebPartDescription description = new WebPartDescription(part); descriptions.Add(description); } _availableWebPartDescriptions = new WebPartDescriptionCollection(descriptions); } return _availableWebPartDescriptions; } private WebPartCollection GetClosedWebParts() { // WebPartManager is checked for null in calling code Debug.Assert(WebPartManager != null); ArrayList closedWebParts = new ArrayList(); WebPartCollection webParts = WebPartManager.WebParts; if (webParts != null) { foreach (WebPart part in webParts) { if (part.IsClosed) { closedWebParts.Add(part); } } } return new WebPartCollection(closedWebParts); } public override WebPart GetWebPart(WebPartDescription description) { if (description == null) { throw new ArgumentNullException("description"); } WebPartDescriptionCollection webPartDescriptions = GetAvailableWebPartDescriptions(); if (!webPartDescriptions.Contains(description)) { throw new ArgumentException(SR.GetString(SR.CatalogPart_UnknownDescription), "description"); } return description.WebPart; } ///protected internal override void OnInit(EventArgs e) { base.OnInit(e); if (WebPartManager != null) { WebPartManager.WebPartAdded += new WebPartEventHandler(this.OnWebPartsChanged); WebPartManager.WebPartClosed += new WebPartEventHandler(this.OnWebPartsChanged); WebPartManager.WebPartDeleted += new WebPartEventHandler(this.OnWebPartsChanged); } } protected internal override void OnPreRender(EventArgs e) { base.OnPreRender(e); // Invalidate cache, since the DisplayTitles may not have been available the first time // we created the WebPartDescriptions ( _availableWebPartDescriptions = null; } private void OnWebPartsChanged(object sender, WebPartEventArgs e) { // Invalidate cache _availableWebPartDescriptions = null; } // Override Render to render nothing by default, since the CatalogPartChrome renders the // AvailableWebParts. A CatalogPart only needs to render something if it wants // additional rendering above the AvailableWebParts. protected internal override void Render(HtmlTextWriter writer) { } #region Overriden to hide in the designer (VSWhidbey 353577) [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override string AccessKey { get { return base.AccessKey; } set { base.AccessKey = value; } } #if ORCAS [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override bool AllowPaginate { get { return base.AllowPaginate; } set { base.AllowPaginate = value; } } #endif [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override Color BackColor { get { return base.BackColor; } set { base.BackColor = value; } } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override string BackImageUrl { get { return base.BackImageUrl; } set { base.BackImageUrl = value; } } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override Color BorderColor { get { return base.BorderColor; } set { base.BorderColor = value; } } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override BorderStyle BorderStyle { get { return base.BorderStyle; } set { base.BorderStyle = value; } } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override Unit BorderWidth { get { return base.BorderWidth; } set { base.BorderWidth = value; } } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false), CssClassProperty()] public override string CssClass { get { return base.CssClass; } set { base.CssClass = value; } } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override string DefaultButton { get { return base.DefaultButton; } set { base.DefaultButton = value; } } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override ContentDirection Direction { get { return base.Direction; } set { base.Direction = value; } } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override bool Enabled { get { return base.Enabled; } set { base.Enabled = value; } } [Browsable(false), DefaultValue(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override bool EnableTheming { get { return false; } set { throw new NotSupportedException(SR.GetString(SR.NoThemingSupport, this.GetType().Name)); } } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override FontInfo Font { get { return base.Font; } } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override Color ForeColor { get { return base.ForeColor; } set { base.ForeColor = value; } } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override string GroupingText { get { return base.GroupingText; } set { base.GroupingText = value; } } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override Unit Height { get { return base.Height; } set { base.Height = value; } } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override HorizontalAlign HorizontalAlign { get { return base.HorizontalAlign; } set { base.HorizontalAlign = value; } } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override ScrollBars ScrollBars { get { return base.ScrollBars; } set { base.ScrollBars = value; } } [Browsable(false), DefaultValue(""), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override string SkinID { get { return String.Empty; } set { throw new NotSupportedException(SR.GetString(SR.NoThemingSupport, this.GetType().Name)); } } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override short TabIndex { get { return base.TabIndex; } set { base.TabIndex = value; } } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override string ToolTip { get { return base.ToolTip; } set { base.ToolTip = value; } } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override bool Visible { get { return base.Visible; } set { base.Visible = value; } } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override Unit Width { get { return base.Width; } set { base.Width = value; } } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override bool Wrap { get { return base.Wrap; } set { base.Wrap = value; } } #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. //------------------------------------------------------------------------------ // // Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.WebControls.WebParts { using System; using System.Collections; using System.Collections.Specialized; using System.ComponentModel; using System.Diagnostics; using System.Drawing; using System.Globalization; using System.Security.Permissions; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; ////// [ Designer("System.Web.UI.Design.WebControls.WebParts.PageCatalogPartDesigner, " + AssemblyRef.SystemDesign), ] [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] public sealed class PageCatalogPart : CatalogPart { private WebPartDescriptionCollection _availableWebPartDescriptions; private static readonly WebPartDescriptionCollection DesignModeAvailableWebParts = new WebPartDescriptionCollection(new WebPartDescription[] { new WebPartDescription("webpart1", String.Format(CultureInfo.CurrentCulture, SR.GetString(SR.CatalogPart_SampleWebPartTitle), "1"), null, null), new WebPartDescription("webpart2", String.Format(CultureInfo.CurrentCulture, SR.GetString(SR.CatalogPart_SampleWebPartTitle), "2"), null, null), new WebPartDescription("webpart3", String.Format(CultureInfo.CurrentCulture, SR.GetString(SR.CatalogPart_SampleWebPartTitle), "3"), null, null), }); [ WebSysDefaultValue(SR.PageCatalogPart_PartTitle), ] public override string Title { get { string s = (string)ViewState["Title"]; return (s != null) ? s : SR.GetString(SR.PageCatalogPart_PartTitle); } set { ViewState["Title"] = value; } } public override WebPartDescriptionCollection GetAvailableWebPartDescriptions() { if (DesignMode) { return DesignModeAvailableWebParts; } if (_availableWebPartDescriptions == null) { WebPartCollection availableWebParts; if (WebPartManager != null) { WebPartCollection closedWebParts = GetClosedWebParts(); if (closedWebParts != null) { availableWebParts = closedWebParts; } else { availableWebParts = new WebPartCollection(); } } else { availableWebParts = new WebPartCollection(); } ArrayList descriptions = new ArrayList(); foreach(WebPart part in availableWebParts) { // Do not show UnauthorizedWebParts ( if (part is UnauthorizedWebPart) { continue; } WebPartDescription description = new WebPartDescription(part); descriptions.Add(description); } _availableWebPartDescriptions = new WebPartDescriptionCollection(descriptions); } return _availableWebPartDescriptions; } private WebPartCollection GetClosedWebParts() { // WebPartManager is checked for null in calling code Debug.Assert(WebPartManager != null); ArrayList closedWebParts = new ArrayList(); WebPartCollection webParts = WebPartManager.WebParts; if (webParts != null) { foreach (WebPart part in webParts) { if (part.IsClosed) { closedWebParts.Add(part); } } } return new WebPartCollection(closedWebParts); } public override WebPart GetWebPart(WebPartDescription description) { if (description == null) { throw new ArgumentNullException("description"); } WebPartDescriptionCollection webPartDescriptions = GetAvailableWebPartDescriptions(); if (!webPartDescriptions.Contains(description)) { throw new ArgumentException(SR.GetString(SR.CatalogPart_UnknownDescription), "description"); } return description.WebPart; } ///protected internal override void OnInit(EventArgs e) { base.OnInit(e); if (WebPartManager != null) { WebPartManager.WebPartAdded += new WebPartEventHandler(this.OnWebPartsChanged); WebPartManager.WebPartClosed += new WebPartEventHandler(this.OnWebPartsChanged); WebPartManager.WebPartDeleted += new WebPartEventHandler(this.OnWebPartsChanged); } } protected internal override void OnPreRender(EventArgs e) { base.OnPreRender(e); // Invalidate cache, since the DisplayTitles may not have been available the first time // we created the WebPartDescriptions ( _availableWebPartDescriptions = null; } private void OnWebPartsChanged(object sender, WebPartEventArgs e) { // Invalidate cache _availableWebPartDescriptions = null; } // Override Render to render nothing by default, since the CatalogPartChrome renders the // AvailableWebParts. A CatalogPart only needs to render something if it wants // additional rendering above the AvailableWebParts. protected internal override void Render(HtmlTextWriter writer) { } #region Overriden to hide in the designer (VSWhidbey 353577) [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override string AccessKey { get { return base.AccessKey; } set { base.AccessKey = value; } } #if ORCAS [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override bool AllowPaginate { get { return base.AllowPaginate; } set { base.AllowPaginate = value; } } #endif [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override Color BackColor { get { return base.BackColor; } set { base.BackColor = value; } } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override string BackImageUrl { get { return base.BackImageUrl; } set { base.BackImageUrl = value; } } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override Color BorderColor { get { return base.BorderColor; } set { base.BorderColor = value; } } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override BorderStyle BorderStyle { get { return base.BorderStyle; } set { base.BorderStyle = value; } } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override Unit BorderWidth { get { return base.BorderWidth; } set { base.BorderWidth = value; } } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false), CssClassProperty()] public override string CssClass { get { return base.CssClass; } set { base.CssClass = value; } } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override string DefaultButton { get { return base.DefaultButton; } set { base.DefaultButton = value; } } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override ContentDirection Direction { get { return base.Direction; } set { base.Direction = value; } } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override bool Enabled { get { return base.Enabled; } set { base.Enabled = value; } } [Browsable(false), DefaultValue(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override bool EnableTheming { get { return false; } set { throw new NotSupportedException(SR.GetString(SR.NoThemingSupport, this.GetType().Name)); } } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override FontInfo Font { get { return base.Font; } } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override Color ForeColor { get { return base.ForeColor; } set { base.ForeColor = value; } } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override string GroupingText { get { return base.GroupingText; } set { base.GroupingText = value; } } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override Unit Height { get { return base.Height; } set { base.Height = value; } } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override HorizontalAlign HorizontalAlign { get { return base.HorizontalAlign; } set { base.HorizontalAlign = value; } } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override ScrollBars ScrollBars { get { return base.ScrollBars; } set { base.ScrollBars = value; } } [Browsable(false), DefaultValue(""), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override string SkinID { get { return String.Empty; } set { throw new NotSupportedException(SR.GetString(SR.NoThemingSupport, this.GetType().Name)); } } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override short TabIndex { get { return base.TabIndex; } set { base.TabIndex = value; } } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override string ToolTip { get { return base.ToolTip; } set { base.ToolTip = value; } } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override bool Visible { get { return base.Visible; } set { base.Visible = value; } } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override Unit Width { get { return base.Width; } set { base.Width = value; } } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never), Themeable(false)] public override bool Wrap { get { return base.Wrap; } set { base.Wrap = value; } } #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- HtmlInputButton.cs
- InheritedPropertyDescriptor.cs
- ImpersonateTokenRef.cs
- IndexerReference.cs
- PresentationSource.cs
- TemplateBindingExpressionConverter.cs
- ProtocolsConfiguration.cs
- ContentElementAutomationPeer.cs
- GridViewUpdateEventArgs.cs
- OleDbFactory.cs
- StreamFormatter.cs
- SettingsSection.cs
- EdmPropertyAttribute.cs
- ReceiveActivityDesignerTheme.cs
- TagPrefixInfo.cs
- Utils.cs
- returneventsaver.cs
- GlobalizationSection.cs
- COM2PropertyDescriptor.cs
- RankException.cs
- LoaderAllocator.cs
- ReadWriteObjectLock.cs
- DataBoundControlAdapter.cs
- CompiledQueryCacheKey.cs
- WindowsTokenRoleProvider.cs
- TextEvent.cs
- NetTcpSection.cs
- ArgumentOutOfRangeException.cs
- QilList.cs
- SerializerProvider.cs
- ConstraintManager.cs
- ForwardPositionQuery.cs
- HtmlTernaryTree.cs
- Line.cs
- EditorBrowsableAttribute.cs
- SqlFacetAttribute.cs
- TrackingStringDictionary.cs
- WebRequest.cs
- SafeEventLogWriteHandle.cs
- SmtpCommands.cs
- Tablet.cs
- TimeSpanStorage.cs
- DataServiceBehavior.cs
- KeyGesture.cs
- AssemblyNameProxy.cs
- LaxModeSecurityHeaderElementInferenceEngine.cs
- Page.cs
- ToolbarAUtomationPeer.cs
- ReferenceEqualityComparer.cs
- InputEventArgs.cs
- Helpers.cs
- WebBrowserBase.cs
- SerializationObjectManager.cs
- EdmMember.cs
- ImageAnimator.cs
- TargetInvocationException.cs
- designeractionbehavior.cs
- DetailsViewDeleteEventArgs.cs
- CustomAttributeBuilder.cs
- HtmlSelect.cs
- AnnotationHelper.cs
- ForeignConstraint.cs
- ControlParameter.cs
- SerializerDescriptor.cs
- Propagator.cs
- WinInetCache.cs
- SizeAnimation.cs
- pingexception.cs
- XmlDomTextWriter.cs
- TypeUtil.cs
- DbProviderServices.cs
- UTF32Encoding.cs
- TransportContext.cs
- MimeMapping.cs
- DesignerForm.cs
- NetworkInterface.cs
- FontSource.cs
- CompilerState.cs
- EntityModelSchemaGenerator.cs
- ToolStripItemDesigner.cs
- AncestorChangedEventArgs.cs
- TreeNodeStyleCollection.cs
- DisplayNameAttribute.cs
- RemotingAttributes.cs
- BindingGroup.cs
- BaseResourcesBuildProvider.cs
- _ConnectStream.cs
- ThreadExceptionDialog.cs
- OleServicesContext.cs
- ObjectPersistData.cs
- ActiveXSite.cs
- InputLanguageCollection.cs
- MemberRelationshipService.cs
- SQLSingleStorage.cs
- ExpressionLink.cs
- MarkupProperty.cs
- AutomationEvent.cs
- _ConnectionGroup.cs
- DeferredElementTreeState.cs
- CodeParameterDeclarationExpression.cs