Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / 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
- SiteMap.cs
- InvalidPrinterException.cs
- ServiceDescriptions.cs
- BuildResultCache.cs
- OperatingSystem.cs
- TextBounds.cs
- Matrix3DValueSerializer.cs
- DesignTimeResourceProviderFactoryAttribute.cs
- ResourceSet.cs
- ToolStripPanel.cs
- DataControlPagerLinkButton.cs
- NullableDoubleMinMaxAggregationOperator.cs
- FocusManager.cs
- PolicyManager.cs
- DesignerTextViewAdapter.cs
- XmlILCommand.cs
- DefaultObjectMappingItemCollection.cs
- HMACRIPEMD160.cs
- RawStylusSystemGestureInputReport.cs
- StaticExtensionConverter.cs
- OleDbPermission.cs
- DirectoryObjectSecurity.cs
- PairComparer.cs
- StrongName.cs
- PassportIdentity.cs
- Internal.cs
- InvalidDataContractException.cs
- RulePatternOps.cs
- Effect.cs
- SecureUICommand.cs
- View.cs
- XPathExpr.cs
- mediapermission.cs
- HtmlInputCheckBox.cs
- PenLineJoinValidation.cs
- MergablePropertyAttribute.cs
- ClientApiGenerator.cs
- File.cs
- CodeParameterDeclarationExpression.cs
- ReadOnlyAttribute.cs
- SqlXmlStorage.cs
- PrintingPermission.cs
- SafeCertificateContext.cs
- Duration.cs
- WindowShowOrOpenTracker.cs
- TypeValidationEventArgs.cs
- DefinitionUpdate.cs
- PersonalizationProviderHelper.cs
- HtmlTableCell.cs
- CacheRequest.cs
- IDQuery.cs
- DefaultParameterValueAttribute.cs
- PathParser.cs
- TypeExtensions.cs
- HttpContext.cs
- RelationalExpressions.cs
- SecurityPolicySection.cs
- OrderablePartitioner.cs
- EventManager.cs
- EnumMember.cs
- precedingsibling.cs
- TextServicesCompartment.cs
- SqlBulkCopyColumnMapping.cs
- SqlReferenceCollection.cs
- HwndMouseInputProvider.cs
- CustomPopupPlacement.cs
- RangeBaseAutomationPeer.cs
- HostAdapter.cs
- MsmqDiagnostics.cs
- Substitution.cs
- CompModSwitches.cs
- XmlSchemaSearchPattern.cs
- HttpInputStream.cs
- CodeNamespace.cs
- ToolboxCategoryItems.cs
- TimeSpanMinutesConverter.cs
- PersistChildrenAttribute.cs
- EmptyEnumerable.cs
- SimpleWorkerRequest.cs
- FaultDescription.cs
- RenderTargetBitmap.cs
- BitmapEffect.cs
- XmlSchemaAnnotation.cs
- DataGridRelationshipRow.cs
- RepeaterItem.cs
- DbQueryCommandTree.cs
- TypeLoadException.cs
- DbProviderSpecificTypePropertyAttribute.cs
- WindowsRebar.cs
- EntityDataSourceDesignerHelper.cs
- IPGlobalProperties.cs
- UrlMapping.cs
- NamespaceDecl.cs
- RemotingHelper.cs
- SqlBulkCopy.cs
- TrackPointCollection.cs
- KeyConverter.cs
- SqlCrossApplyToCrossJoin.cs
- TextChange.cs
- UserControl.cs