Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / xsp / System / Web / UI / WebParts / WebPartCollection.cs / 1 / WebPartCollection.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.WebControls.WebParts { using System; using System.Collections; using System.Diagnostics; using System.Globalization; using System.Security.Permissions; ////// Read-only collection of WebParts. Collection cannot be modified after contstruction. /// [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] public sealed class WebPartCollection : ReadOnlyCollectionBase { public WebPartCollection() { } public WebPartCollection(ICollection webParts) { if (webParts == null) { throw new ArgumentNullException("webParts"); } foreach (object obj in webParts) { if (obj == null) { throw new ArgumentException(SR.GetString(SR.Collection_CantAddNull), "webParts"); } if (!(obj is WebPart)) { throw new ArgumentException(SR.GetString(SR.Collection_InvalidType, "WebPart"), "webParts"); } InnerList.Add(obj); } } internal int Add(WebPart value) { Debug.Assert(value != null); return InnerList.Add(value); } public bool Contains(WebPart value) { return InnerList.Contains(value); } public int IndexOf(WebPart value) { return InnerList.IndexOf(value); } public WebPart this[int index] { get { return (WebPart) InnerList[index]; } } ////// Returns the WebPart with the specified id, or the GenericWebPart containing a control with /// the specified id, or the ProxyWebPart with OriginalID or GenericWebPartID equal to the /// specified id, performing a case-insensitive comparison. Returns null if there are no matches. /// public WebPart this[string id] { // PERF: Use a hashtable for lookup, instead of a linear search get { foreach (WebPart webPart in InnerList) { if (String.Equals(webPart.ID, id, StringComparison.OrdinalIgnoreCase)) { return webPart; } GenericWebPart genericWebPart = webPart as GenericWebPart; if (genericWebPart != null) { Control control = genericWebPart.ChildControl; if (control != null) { if (String.Equals(control.ID, id, StringComparison.OrdinalIgnoreCase)) { return genericWebPart; } } } ProxyWebPart proxyWebPart = webPart as ProxyWebPart; if (proxyWebPart != null) { if ((String.Equals(proxyWebPart.OriginalID, id, StringComparison.OrdinalIgnoreCase)) || (String.Equals(proxyWebPart.GenericWebPartID, id, StringComparison.OrdinalIgnoreCase))) { return proxyWebPart; } } } return null; } } ////// public void CopyTo(WebPart[] array, int index) { InnerList.CopyTo(array, index); } } }Copies contents from the collection to a specified array with a /// specified starting index. ///
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- hresults.cs
- LocalizabilityAttribute.cs
- ByteRangeDownloader.cs
- OptimizerPatterns.cs
- GlobalizationSection.cs
- WorkflowInstanceContextProvider.cs
- DesignerActionHeaderItem.cs
- AnnotationAuthorChangedEventArgs.cs
- DetailsViewUpdatedEventArgs.cs
- AppDomainProtocolHandler.cs
- DataGridViewColumnTypeEditor.cs
- CSharpCodeProvider.cs
- XmlObjectSerializerReadContextComplex.cs
- DataRelation.cs
- PointLight.cs
- TextRangeEdit.cs
- RC2.cs
- LinearQuaternionKeyFrame.cs
- InsufficientMemoryException.cs
- CustomAttribute.cs
- ViewBase.cs
- ExtensibleSyndicationObject.cs
- Calendar.cs
- DataGridViewRowEventArgs.cs
- TableLayoutPanelDesigner.cs
- HyperLinkStyle.cs
- CodeNamespaceImport.cs
- PresentationAppDomainManager.cs
- FixedHighlight.cs
- ProviderSettingsCollection.cs
- SendingRequestEventArgs.cs
- BinaryFormatter.cs
- QuaternionValueSerializer.cs
- KeyInfo.cs
- CharacterBufferReference.cs
- UidManager.cs
- CallInfo.cs
- AuthenticationModulesSection.cs
- AdRotatorDesigner.cs
- ByteAnimationUsingKeyFrames.cs
- WorkflowPersistenceContext.cs
- HostUtils.cs
- JsonCollectionDataContract.cs
- TemplateNameScope.cs
- StatusBarDesigner.cs
- HtmlControl.cs
- DbConnectionPoolGroupProviderInfo.cs
- ExpandedWrapper.cs
- EventHandlers.cs
- WebEventTraceProvider.cs
- ContentTypeSettingDispatchMessageFormatter.cs
- BitmapSizeOptions.cs
- RadialGradientBrush.cs
- DataExchangeServiceBinder.cs
- ReadWriteObjectLock.cs
- WebPart.cs
- WorkflowStateRollbackService.cs
- latinshape.cs
- HwndHostAutomationPeer.cs
- CultureSpecificCharacterBufferRange.cs
- XmlSchemaSubstitutionGroup.cs
- GroupBoxRenderer.cs
- Vector3DConverter.cs
- EditableRegion.cs
- XmlSchemaSimpleTypeList.cs
- UnitySerializationHolder.cs
- WebPartZone.cs
- GlobalEventManager.cs
- TextReader.cs
- StreamUpgradeInitiator.cs
- RadioButtonRenderer.cs
- AnimationTimeline.cs
- ILGenerator.cs
- SQLBoolean.cs
- HandleRef.cs
- StructuralComparisons.cs
- SqlClientFactory.cs
- XmlNullResolver.cs
- ServiceModelActivationSectionGroup.cs
- WindowsBrush.cs
- StaticResourceExtension.cs
- RowSpanVector.cs
- MetadataUtilsSmi.cs
- CommandExpr.cs
- ConnectionStringSettingsCollection.cs
- NativeRightsManagementAPIsStructures.cs
- BinaryObjectWriter.cs
- MailWebEventProvider.cs
- ValidatorCompatibilityHelper.cs
- ResourceReferenceExpression.cs
- ButtonDesigner.cs
- BaseCodeDomTreeGenerator.cs
- LinkedList.cs
- NumberFormatInfo.cs
- InstanceKeyView.cs
- HttpModulesSection.cs
- RelationshipEndCollection.cs
- DataRecord.cs
- Blend.cs
- RSAPKCS1SignatureDeformatter.cs