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
- TransactionBridge.cs
- KeyGestureConverter.cs
- DateTimeConstantAttribute.cs
- MonthChangedEventArgs.cs
- AuditLevel.cs
- DataBoundLiteralControl.cs
- ConnectivityStatus.cs
- DataFormats.cs
- DbMetaDataCollectionNames.cs
- infer.cs
- WebBrowsableAttribute.cs
- MatchingStyle.cs
- SupportingTokenAuthenticatorSpecification.cs
- RadioButton.cs
- Viewport2DVisual3D.cs
- ViewGenerator.cs
- PointAnimationUsingPath.cs
- DropShadowBitmapEffect.cs
- ProfileSettingsCollection.cs
- Connector.cs
- DebugViewWriter.cs
- CommandID.cs
- DnsEndPoint.cs
- TrueReadOnlyCollection.cs
- WmlTextViewAdapter.cs
- DataTableExtensions.cs
- XmlAttributeOverrides.cs
- ConfigurationException.cs
- UInt32Storage.cs
- LoginUtil.cs
- X509ScopedServiceCertificateElement.cs
- DateRangeEvent.cs
- ProfileParameter.cs
- RTLAwareMessageBox.cs
- LiteralControl.cs
- ExpressionContext.cs
- ViewKeyConstraint.cs
- StylusCaptureWithinProperty.cs
- EncryptRequest.cs
- XmlSerializableServices.cs
- _TransmitFileOverlappedAsyncResult.cs
- ProjectionCamera.cs
- XmlTextReader.cs
- UnitControl.cs
- LexicalChunk.cs
- CompoundFileReference.cs
- GB18030Encoding.cs
- ASCIIEncoding.cs
- Queue.cs
- TemplateControlParser.cs
- DataControlField.cs
- DesignerCalendarAdapter.cs
- XpsPartBase.cs
- FontFamily.cs
- DashStyle.cs
- IntSumAggregationOperator.cs
- EntityContainerAssociationSetEnd.cs
- Size.cs
- SiteIdentityPermission.cs
- RelatedImageListAttribute.cs
- NotCondition.cs
- Renderer.cs
- MessageRpc.cs
- SystemGatewayIPAddressInformation.cs
- StateManagedCollection.cs
- TimeSpanConverter.cs
- MenuItem.cs
- ControlPropertyNameConverter.cs
- BitFlagsGenerator.cs
- Container.cs
- DictationGrammar.cs
- DynamicDiscoveryDocument.cs
- InputMethod.cs
- ASCIIEncoding.cs
- EntityDataSourceWrapper.cs
- VisualTreeUtils.cs
- Stroke.cs
- RelationshipEndCollection.cs
- BamlRecordReader.cs
- ProbeMatchesApril2005.cs
- DataServiceQueryException.cs
- ContextMenuService.cs
- ExtendedTransformFactory.cs
- SpecularMaterial.cs
- Item.cs
- JournalNavigationScope.cs
- CheckBoxRenderer.cs
- XmlSchemaException.cs
- ClearTypeHintValidation.cs
- CalendarBlackoutDatesCollection.cs
- GlyphRunDrawing.cs
- Base64WriteStateInfo.cs
- OleDbError.cs
- CqlWriter.cs
- AuthorizationRuleCollection.cs
- TaskFactory.cs
- ReadOnlyHierarchicalDataSourceView.cs
- Token.cs
- XmlUtil.cs
- ContainerFilterService.cs