Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Web / UI / WebParts / WebPartCollection.cs / 1305376 / 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; ////// Read-only collection of WebParts. Collection cannot be modified after contstruction. /// 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); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.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
- FontSource.cs
- XmlSchemaAnyAttribute.cs
- DrawingBrush.cs
- CodeMethodMap.cs
- Reference.cs
- VirtualizingStackPanel.cs
- BamlRecords.cs
- NeedSkipTokenVisitor.cs
- XmlIgnoreAttribute.cs
- SourceElementsCollection.cs
- NameObjectCollectionBase.cs
- SelectionGlyphBase.cs
- DataTableMapping.cs
- BinHexEncoder.cs
- CrossSiteScriptingValidation.cs
- sortedlist.cs
- SerializerDescriptor.cs
- OrderByExpression.cs
- OwnerDrawPropertyBag.cs
- DesignerHierarchicalDataSourceView.cs
- StrongNamePublicKeyBlob.cs
- PlatformCulture.cs
- InkCollectionBehavior.cs
- DateTimeOffset.cs
- altserialization.cs
- ModuleBuilder.cs
- SystemIPGlobalStatistics.cs
- NameValueCollection.cs
- LedgerEntry.cs
- ItemsPresenter.cs
- ConstantSlot.cs
- DetailsViewCommandEventArgs.cs
- AssemblyInfo.cs
- InvalidAsynchronousStateException.cs
- RadioButton.cs
- SerialPinChanges.cs
- _Rfc2616CacheValidators.cs
- FormsAuthenticationConfiguration.cs
- DetailsViewUpdateEventArgs.cs
- querybuilder.cs
- SafeHandles.cs
- HostedElements.cs
- StopStoryboard.cs
- ParameterModifier.cs
- HyperLink.cs
- WindowsAuthenticationModule.cs
- DataGridColumnsPage.cs
- MatrixAnimationBase.cs
- DataTableMapping.cs
- EncoderParameters.cs
- ElementAtQueryOperator.cs
- DbMetaDataFactory.cs
- ToolStripScrollButton.cs
- ColorAnimation.cs
- HtmlTable.cs
- SecurityKeyIdentifierClause.cs
- DynamicQueryableWrapper.cs
- DynamicPropertyHolder.cs
- LogConverter.cs
- EntityDataSourceValidationException.cs
- WpfXamlMember.cs
- DescendantQuery.cs
- ObjectItemAssemblyLoader.cs
- AssemblySettingAttributes.cs
- XamlSerializerUtil.cs
- PagesSection.cs
- JsonFaultDetail.cs
- InfoCardProofToken.cs
- HebrewNumber.cs
- XPathQilFactory.cs
- cookieexception.cs
- ProcessModelInfo.cs
- InputReport.cs
- SystemIcmpV6Statistics.cs
- XhtmlConformanceSection.cs
- NamedPermissionSet.cs
- SettingsAttributeDictionary.cs
- UndirectedGraph.cs
- TextDecoration.cs
- TextRangeBase.cs
- SqlRewriteScalarSubqueries.cs
- DataShape.cs
- HttpApplication.cs
- SendKeys.cs
- RoleGroup.cs
- MetadataCacheItem.cs
- CodeCatchClause.cs
- PropertyMappingExceptionEventArgs.cs
- DataGridCell.cs
- ParsedAttributeCollection.cs
- DbModificationClause.cs
- AutoScrollExpandMessageFilter.cs
- IQueryable.cs
- Range.cs
- AssemblyBuilder.cs
- XmlSchema.cs
- METAHEADER.cs
- WebEventCodes.cs
- MsmqChannelFactory.cs
- InvariantComparer.cs