Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / untmp / 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.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- RenderData.cs
- VersionPair.cs
- ApplicationDirectoryMembershipCondition.cs
- Label.cs
- NativeMethods.cs
- AutoCompleteStringCollection.cs
- ListControlConvertEventArgs.cs
- XmlQuerySequence.cs
- Events.cs
- DataGridViewAdvancedBorderStyle.cs
- FirstMatchCodeGroup.cs
- CommandDevice.cs
- DateTimeConstantAttribute.cs
- ProviderIncompatibleException.cs
- XmlObjectSerializerWriteContextComplexJson.cs
- COM2IPerPropertyBrowsingHandler.cs
- FixedSOMLineCollection.cs
- CursorInteropHelper.cs
- StrongNameMembershipCondition.cs
- MetricEntry.cs
- wmiprovider.cs
- MinimizableAttributeTypeConverter.cs
- ValueTable.cs
- Keywords.cs
- Ipv6Element.cs
- HtmlInputButton.cs
- BoolExpression.cs
- DataBindingCollection.cs
- Padding.cs
- QilChoice.cs
- Transform3DGroup.cs
- SafeFileHandle.cs
- SerializationIncompleteException.cs
- ContainerParaClient.cs
- EventSinkActivity.cs
- DataGridViewComboBoxColumn.cs
- SecurityElementBase.cs
- SortAction.cs
- WebPartManagerInternals.cs
- IpcChannelHelper.cs
- LayoutEditorPart.cs
- HMACMD5.cs
- TextServicesDisplayAttributePropertyRanges.cs
- ScrollChrome.cs
- XmlAnyElementAttributes.cs
- BamlLocalizableResourceKey.cs
- TemplateAction.cs
- XmlKeywords.cs
- HashHelper.cs
- mediaeventshelper.cs
- DataView.cs
- SevenBitStream.cs
- TypeContext.cs
- XmlNullResolver.cs
- ArraySet.cs
- CodeTypeReferenceExpression.cs
- WebConvert.cs
- CustomValidator.cs
- RelationshipManager.cs
- FormViewPageEventArgs.cs
- FixedPosition.cs
- Preprocessor.cs
- SecurityIdentifierConverter.cs
- ListView.cs
- Error.cs
- NavigationPropertySingletonExpression.cs
- PrivateUnsafeNativeCompoundFileMethods.cs
- Converter.cs
- Int32RectConverter.cs
- _SslSessionsCache.cs
- EntityDataSourceContextCreatedEventArgs.cs
- SafeReversePInvokeHandle.cs
- WSSecurityOneDotOneSendSecurityHeader.cs
- RequestQueue.cs
- Pen.cs
- PersistenceProvider.cs
- MetadataSerializer.cs
- Registry.cs
- MouseButtonEventArgs.cs
- ThrowHelper.cs
- HtmlTableCellCollection.cs
- uribuilder.cs
- ResourceContainer.cs
- DesignerVerb.cs
- PackWebRequest.cs
- BindingListCollectionView.cs
- GlyphingCache.cs
- SctClaimSerializer.cs
- HttpStreamFormatter.cs
- SiteOfOriginPart.cs
- SessionPageStateSection.cs
- CssStyleCollection.cs
- BitFlagsGenerator.cs
- RegexMatch.cs
- AssemblyBuilder.cs
- WebHostedComPlusServiceHost.cs
- XmlDocumentSurrogate.cs
- ErrorLog.cs
- KnownTypeDataContractResolver.cs
- WebPartTransformer.cs