Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Web / UI / WebParts / WebPartDisplayModeCollection.cs / 1305376 / WebPartDisplayModeCollection.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.WebControls.WebParts { using System; using System.Collections; public sealed class WebPartDisplayModeCollection : CollectionBase { private bool _readOnly; private string _readOnlyExceptionMessage; // Prevent instantiation outside of our assembly. We want third-part code to use the collection // returned by the base method, not create a new collection. internal WebPartDisplayModeCollection() { } public bool IsReadOnly { get { return _readOnly; } } public WebPartDisplayMode this[int index] { get { return (WebPartDisplayMode)List[index]; } } public WebPartDisplayMode this[string modeName] { get { foreach (WebPartDisplayMode displayMode in List) { if (String.Equals(displayMode.Name, modeName, StringComparison.OrdinalIgnoreCase)) { return displayMode; } } return null; } } public int Add(WebPartDisplayMode value) { return List.Add(value); } internal int AddInternal(WebPartDisplayMode value) { bool isReadOnly = _readOnly; _readOnly = false; // Extra try-catch block to prevent elevation of privilege attack via exception filter try { try { return List.Add(value); } finally { _readOnly = isReadOnly; } } catch { throw; } } private void CheckReadOnly() { if (_readOnly) { throw new InvalidOperationException(SR.GetString(_readOnlyExceptionMessage)); } } public bool Contains(WebPartDisplayMode value) { return List.Contains(value); } public void CopyTo(WebPartDisplayMode[] array, int index) { List.CopyTo(array, index); } public int IndexOf(WebPartDisplayMode value) { return List.IndexOf(value); } public void Insert(int index, WebPartDisplayMode value) { List.Insert(index, value); } protected override void OnClear() { throw new InvalidOperationException(SR.GetString(SR.WebPartDisplayModeCollection_CantRemove)); } protected override void OnInsert(int index, object value) { CheckReadOnly(); WebPartDisplayMode displayMode = (WebPartDisplayMode)value; foreach (WebPartDisplayMode existingDisplayMode in List) { if (displayMode.Name == existingDisplayMode.Name) { throw new ArgumentException(SR.GetString( SR.WebPartDisplayModeCollection_DuplicateName, displayMode.Name)); } } base.OnInsert(index, value); } protected override void OnRemove(int index, object value) { throw new InvalidOperationException(SR.GetString(SR.WebPartDisplayModeCollection_CantRemove)); } protected override void OnSet(int index, object oldValue, object newValue) { throw new InvalidOperationException(SR.GetString(SR.WebPartDisplayModeCollection_CantSet)); } protected override void OnValidate(object value) { base.OnValidate(value); if (value == null) { throw new ArgumentNullException("value", SR.GetString(SR.Collection_CantAddNull)); } if (!(value is WebPartDisplayMode)) { throw new ArgumentException(SR.GetString(SR.Collection_InvalidType, "WebPartDisplayMode"), "value"); } } internal void SetReadOnly(string exceptionMessage) { _readOnlyExceptionMessage = exceptionMessage; _readOnly = true; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- Constraint.cs
- EqualityComparer.cs
- NotifyInputEventArgs.cs
- ApplyTemplatesAction.cs
- SwitchAttribute.cs
- ForEachAction.cs
- InnerItemCollectionView.cs
- ImageSource.cs
- LinqDataSourceDisposeEventArgs.cs
- AspCompat.cs
- SettingsPropertyNotFoundException.cs
- IndentedTextWriter.cs
- DuplicateWaitObjectException.cs
- UmAlQuraCalendar.cs
- ParallelTimeline.cs
- WebServiceResponseDesigner.cs
- DebuggerService.cs
- LinqDataSourceSelectEventArgs.cs
- ChannelReliableSession.cs
- XmlSchemaValidationException.cs
- Rectangle.cs
- SemanticAnalyzer.cs
- QueryContext.cs
- ResourceManagerWrapper.cs
- SafeArrayRankMismatchException.cs
- BasicKeyConstraint.cs
- EntityDataSourceStatementEditorForm.cs
- figurelength.cs
- DateTime.cs
- ConfigsHelper.cs
- XmlWriter.cs
- CodeVariableDeclarationStatement.cs
- RootBrowserWindowProxy.cs
- ScaleTransform3D.cs
- LinkUtilities.cs
- InputLanguageSource.cs
- CachingParameterInspector.cs
- TypeHelpers.cs
- AssemblyUtil.cs
- GridItemCollection.cs
- SqlDataSourceFilteringEventArgs.cs
- DefaultValueMapping.cs
- SqlParameter.cs
- CacheOutputQuery.cs
- AllMembershipCondition.cs
- XmlUrlResolver.cs
- EditorPartChrome.cs
- SimpleType.cs
- WebReferencesBuildProvider.cs
- WindowPattern.cs
- BitmapEffectInputData.cs
- PointAnimationUsingKeyFrames.cs
- mactripleDES.cs
- NamespaceDisplayAutomationPeer.cs
- PermissionSetTriple.cs
- ErrorFormatterPage.cs
- DataGridViewRowPostPaintEventArgs.cs
- X509SecurityTokenAuthenticator.cs
- RuntimeVariablesExpression.cs
- VisualSerializer.cs
- MemberPathMap.cs
- AuthorizationRuleCollection.cs
- ConstructorNeedsTagAttribute.cs
- TraceContextRecord.cs
- KerberosRequestorSecurityTokenAuthenticator.cs
- ObjRef.cs
- MenuItem.cs
- Bitmap.cs
- DataViewSetting.cs
- ExclusiveCanonicalizationTransform.cs
- KeyedByTypeCollection.cs
- UnmanagedMemoryStreamWrapper.cs
- TrackBarRenderer.cs
- NameValueConfigurationCollection.cs
- NullableDoubleAverageAggregationOperator.cs
- ScaleTransform.cs
- CacheOutputQuery.cs
- IProvider.cs
- PrtCap_Reader.cs
- LightweightCodeGenerator.cs
- UnmanagedMemoryStreamWrapper.cs
- OverlappedAsyncResult.cs
- StreamingContext.cs
- TextDecorations.cs
- SqlDataRecord.cs
- ConstrainedGroup.cs
- TextTreeTextNode.cs
- OnOperation.cs
- TimersDescriptionAttribute.cs
- ColumnReorderedEventArgs.cs
- InstanceNotReadyException.cs
- CalloutQueueItem.cs
- HashHelper.cs
- ServiceMetadataContractBehavior.cs
- DateBoldEvent.cs
- COMException.cs
- HttpException.cs
- EventData.cs
- DataSourceXmlClassAttribute.cs
- TaskFormBase.cs