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
- GridViewDeleteEventArgs.cs
- XsltLoader.cs
- IPEndPoint.cs
- RoutedEvent.cs
- Slider.cs
- ClientFormsAuthenticationCredentials.cs
- MediaElement.cs
- CodeGotoStatement.cs
- TriState.cs
- Utils.cs
- XPathException.cs
- ContentWrapperAttribute.cs
- path.cs
- StructureChangedEventArgs.cs
- MonitoringDescriptionAttribute.cs
- StateItem.cs
- HeaderedContentControl.cs
- X509IssuerSerialKeyIdentifierClause.cs
- XPathNode.cs
- ScriptReference.cs
- lengthconverter.cs
- IisTraceWebEventProvider.cs
- AddInBase.cs
- ConditionalBranch.cs
- Win32NamedPipes.cs
- SqlClientWrapperSmiStream.cs
- FontCacheLogic.cs
- ComponentDispatcherThread.cs
- SQLInt32Storage.cs
- Point4DValueSerializer.cs
- _Semaphore.cs
- HelpKeywordAttribute.cs
- TextTreeExtractElementUndoUnit.cs
- BamlLocalizerErrorNotifyEventArgs.cs
- XmlNullResolver.cs
- XmlSerializationGeneratedCode.cs
- RsaElement.cs
- CqlErrorHelper.cs
- DoubleUtil.cs
- ParagraphResult.cs
- RuleSettings.cs
- HtmlButton.cs
- FormatPage.cs
- ProfileManager.cs
- TableDetailsCollection.cs
- EncoderNLS.cs
- RegistryPermission.cs
- SmiEventStream.cs
- WebPartConnectVerb.cs
- StringCollection.cs
- XmlDataDocument.cs
- ListSortDescription.cs
- ListControlConvertEventArgs.cs
- BaseParaClient.cs
- CodeTypeDelegate.cs
- Roles.cs
- Matrix3DValueSerializer.cs
- FixUp.cs
- HttpListener.cs
- SqlUserDefinedAggregateAttribute.cs
- TextBoxAutomationPeer.cs
- UriExt.cs
- QueuePathEditor.cs
- DeviceFilterEditorDialog.cs
- Binding.cs
- StrongNameIdentityPermission.cs
- ReadOnlyHierarchicalDataSource.cs
- mediaclock.cs
- HttpApplicationStateBase.cs
- StrongName.cs
- PropertiesTab.cs
- Activity.cs
- QueryOpcode.cs
- AsyncPostBackTrigger.cs
- ImageAttributes.cs
- ChildTable.cs
- TypeViewSchema.cs
- ExternalCalls.cs
- ToolStripItem.cs
- TextBoxLine.cs
- RoutedPropertyChangedEventArgs.cs
- TextServicesDisplayAttribute.cs
- AutomationPropertyInfo.cs
- RequestSecurityTokenForGetBrowserToken.cs
- DataPagerField.cs
- OdbcPermission.cs
- DrawingBrush.cs
- NotifyIcon.cs
- QilLoop.cs
- ExpressionEditorAttribute.cs
- UIElementCollection.cs
- XPathSelfQuery.cs
- DataExpression.cs
- GridViewColumnHeader.cs
- GZipDecoder.cs
- SerTrace.cs
- PersistChildrenAttribute.cs
- PropertyDescriptorGridEntry.cs
- AddInPipelineAttributes.cs
- UndoEngine.cs