Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / xsp / System / Web / UI / WebParts / WebPartDisplayModeCollection.cs / 1 / 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. // //----------------------------------------------------------------------------- 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- CroppedBitmap.cs
- StylusPointPropertyInfo.cs
- SingleKeyFrameCollection.cs
- DirectoryInfo.cs
- EmptyElement.cs
- SizeConverter.cs
- UnicodeEncoding.cs
- ValidationResult.cs
- ProcessProtocolHandler.cs
- EntityDataSourceSelectingEventArgs.cs
- FontNamesConverter.cs
- SafeViewOfFileHandle.cs
- SqlPersistenceProviderFactory.cs
- ToolBarButtonClickEvent.cs
- TargetFrameworkUtil.cs
- String.cs
- FrugalMap.cs
- PathFigure.cs
- XmlUnspecifiedAttribute.cs
- RangeBaseAutomationPeer.cs
- ProcessInputEventArgs.cs
- UserControl.cs
- DbConnectionClosed.cs
- KeyFrames.cs
- CodeIterationStatement.cs
- PathGeometry.cs
- DynamicEndpoint.cs
- ConditionChanges.cs
- ConstNode.cs
- SqlMethodCallConverter.cs
- clipboard.cs
- DesignerTransaction.cs
- EntityWrapper.cs
- StringToken.cs
- COM2PictureConverter.cs
- DataSourceConverter.cs
- NotFiniteNumberException.cs
- TableLayoutPanelDesigner.cs
- WmlPageAdapter.cs
- shaperfactory.cs
- TypeDescriptionProviderAttribute.cs
- AttachmentCollection.cs
- StandardTransformFactory.cs
- FixedPageAutomationPeer.cs
- MenuItemCollectionEditor.cs
- ValidatorCollection.cs
- DataObjectFieldAttribute.cs
- DataServiceQueryOfT.cs
- assemblycache.cs
- AttributedMetaModel.cs
- Facet.cs
- DataContract.cs
- Configuration.cs
- XmlQueryCardinality.cs
- IMembershipProvider.cs
- ToolBarButtonClickEvent.cs
- TemplateControlBuildProvider.cs
- WebScriptMetadataMessage.cs
- HttpModuleCollection.cs
- Material.cs
- SoapAttributeAttribute.cs
- SafeBitVector32.cs
- RegexCaptureCollection.cs
- NativeRecognizer.cs
- HttpBrowserCapabilitiesWrapper.cs
- ExpressionValueEditor.cs
- OdbcConnectionPoolProviderInfo.cs
- WizardPanel.cs
- XmlEntityReference.cs
- Image.cs
- ToolBar.cs
- SQLGuid.cs
- listitem.cs
- NameNode.cs
- ExpressionsCollectionEditor.cs
- RuntimeHandles.cs
- UserControlCodeDomTreeGenerator.cs
- GiveFeedbackEventArgs.cs
- CodeGroup.cs
- ProfileSection.cs
- TracedNativeMethods.cs
- WindowsListViewGroupSubsetLink.cs
- WebServiceData.cs
- ContractListAdapter.cs
- XpsFilter.cs
- CompositeScriptReference.cs
- XmlDigitalSignatureProcessor.cs
- UnsafeNativeMethods.cs
- CodeBinaryOperatorExpression.cs
- ImpersonateTokenRef.cs
- SizeValueSerializer.cs
- DriveNotFoundException.cs
- XmlSerializerNamespaces.cs
- xml.cs
- ViewEvent.cs
- UIElement.cs
- TitleStyle.cs
- DSASignatureDeformatter.cs
- ListViewGroupConverter.cs
- PrivilegeNotHeldException.cs