Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / DEVDIV / depot / DevDiv / releases / whidbey / QFE / ndp / fx / src / xsp / System / Web / UI / WebParts / WebPartDisplayModeCollection.cs / 2 / WebPartDisplayModeCollection.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.WebControls.WebParts { using System; using System.Collections; using System.Security.Permissions; [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] 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. // 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.Security.Permissions; [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] 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. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- LifetimeServices.cs
- RuntimeVariablesExpression.cs
- WindowsTokenRoleProvider.cs
- InternalConfigEventArgs.cs
- XmlSchemaFacet.cs
- ImageCollectionCodeDomSerializer.cs
- versioninfo.cs
- WorkflowElementDialogWindow.xaml.cs
- Peer.cs
- UnsafeNativeMethods.cs
- WindowsGraphicsWrapper.cs
- SmiSettersStream.cs
- StorageModelBuildProvider.cs
- OverlappedAsyncResult.cs
- UnmanagedHandle.cs
- Binding.cs
- SaveLedgerEntryRequest.cs
- ListViewItem.cs
- OleDbConnection.cs
- InputLanguageEventArgs.cs
- VerticalAlignConverter.cs
- XmlDigitalSignatureProcessor.cs
- CookieProtection.cs
- _DomainName.cs
- DataContractSerializerServiceBehavior.cs
- Stream.cs
- unsafenativemethodsother.cs
- WorkflowRuntimeBehavior.cs
- ApplicationContext.cs
- XmlAtomErrorReader.cs
- Privilege.cs
- PKCS1MaskGenerationMethod.cs
- DataSourceXmlClassAttribute.cs
- _OSSOCK.cs
- Directory.cs
- RelatedImageListAttribute.cs
- DataGridViewAccessibleObject.cs
- StreamReader.cs
- EtwProvider.cs
- PropertyTabChangedEvent.cs
- WebPartConnectionsCancelEventArgs.cs
- cryptoapiTransform.cs
- DataFieldCollectionEditor.cs
- Win32KeyboardDevice.cs
- XmlSchemaSubstitutionGroup.cs
- SafeArchiveContext.cs
- DisplayNameAttribute.cs
- _ContextAwareResult.cs
- PerformanceCounterPermission.cs
- OptimalTextSource.cs
- CompilerCollection.cs
- ThicknessAnimationBase.cs
- ColorAnimationUsingKeyFrames.cs
- QualifiedCellIdBoolean.cs
- XmlSchemaImporter.cs
- TextRunCacheImp.cs
- Style.cs
- CriticalFileToken.cs
- QueueProcessor.cs
- DataSourceIDConverter.cs
- ChtmlSelectionListAdapter.cs
- BindingGroup.cs
- ScopelessEnumAttribute.cs
- ServiceDebugElement.cs
- ADMembershipUser.cs
- KeyTime.cs
- DrawListViewColumnHeaderEventArgs.cs
- XmlCountingReader.cs
- MatrixCamera.cs
- ParameterBinding.cs
- ValidationError.cs
- ColorMatrix.cs
- login.cs
- VectorConverter.cs
- MetadataArtifactLoaderResource.cs
- SortQuery.cs
- Pen.cs
- DataGridCell.cs
- SectionXmlInfo.cs
- PeerHelpers.cs
- XhtmlTextWriter.cs
- KeyValuePairs.cs
- OleDbParameter.cs
- XmlWellformedWriterHelpers.cs
- TreeViewItem.cs
- WebPartAddingEventArgs.cs
- XPathNodePointer.cs
- TextServicesCompartmentContext.cs
- MailMessageEventArgs.cs
- IsolatedStorageFilePermission.cs
- HttpFileCollectionBase.cs
- ListControl.cs
- ScrollItemPattern.cs
- ToolStripContentPanel.cs
- ProtocolsConfigurationHandler.cs
- CRYPTPROTECT_PROMPTSTRUCT.cs
- HotSpot.cs
- StringExpressionSet.cs
- RoutedEventArgs.cs
- ChainOfDependencies.cs