Code:
/ FX-1434 / FX-1434 / 1.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
- SliderAutomationPeer.cs
- MyContact.cs
- ParallelTimeline.cs
- SqlErrorCollection.cs
- ChildChangedEventArgs.cs
- IOException.cs
- SyndicationElementExtensionCollection.cs
- MobileControlDesigner.cs
- DesignerTransactionCloseEvent.cs
- DataGridViewTextBoxColumn.cs
- _CommandStream.cs
- sitestring.cs
- ControlBuilderAttribute.cs
- LostFocusEventManager.cs
- SByte.cs
- SubclassTypeValidator.cs
- MessageQueueCriteria.cs
- Page.cs
- ConnectionConsumerAttribute.cs
- ButtonBaseDesigner.cs
- SQLMembershipProvider.cs
- SafeNativeMemoryHandle.cs
- GroupItemAutomationPeer.cs
- WhitespaceRuleReader.cs
- GeneralTransformCollection.cs
- CLRBindingWorker.cs
- NativeRecognizer.cs
- COM2Enum.cs
- FrameworkElement.cs
- WebPartRestoreVerb.cs
- PreservationFileReader.cs
- CodeChecksumPragma.cs
- MDIWindowDialog.cs
- SpellCheck.cs
- XmlSchemaAnyAttribute.cs
- DataBindEngine.cs
- TextOnlyOutput.cs
- FlowDecisionDesigner.xaml.cs
- SqlInfoMessageEvent.cs
- WebPartConnectionsCloseVerb.cs
- ValueConversionAttribute.cs
- FrameworkTextComposition.cs
- SQLInt64.cs
- HitTestWithPointDrawingContextWalker.cs
- DetailsViewRowCollection.cs
- GlyphRunDrawing.cs
- RewritingPass.cs
- BaseValidator.cs
- PartialCachingAttribute.cs
- WindowsEditBoxRange.cs
- RequestCachingSection.cs
- TemplateColumn.cs
- TableItemProviderWrapper.cs
- WindowsHyperlink.cs
- ServiceDescriptionReflector.cs
- DataMisalignedException.cs
- ConnectivityStatus.cs
- List.cs
- AttributeSetAction.cs
- BamlBinaryWriter.cs
- CapabilitiesAssignment.cs
- METAHEADER.cs
- DataGridViewCellCancelEventArgs.cs
- RSAPKCS1KeyExchangeFormatter.cs
- LazyTextWriterCreator.cs
- ArraySubsetEnumerator.cs
- PictureBox.cs
- DeviceContext.cs
- CodeLabeledStatement.cs
- ServiceDescriptionData.cs
- WebPartVerbCollection.cs
- QueryTask.cs
- StylusCaptureWithinProperty.cs
- RenderOptions.cs
- ConditionalBranch.cs
- XmlAttributes.cs
- Cursor.cs
- regiisutil.cs
- PropertyDescriptorCollection.cs
- EnumValAlphaComparer.cs
- Identifier.cs
- ThreadTrace.cs
- ComplexPropertyEntry.cs
- ButtonField.cs
- FixedTextView.cs
- TypeListConverter.cs
- ServerType.cs
- OleCmdHelper.cs
- DesignerLoader.cs
- Filter.cs
- DataGridViewColumnCollection.cs
- SqlCacheDependencyDatabaseCollection.cs
- XmlEncoding.cs
- DependencyObjectProvider.cs
- XmlSecureResolver.cs
- DataTemplate.cs
- ExcludeFromCodeCoverageAttribute.cs
- NetworkStream.cs
- TextFormatterContext.cs
- SimpleExpression.cs