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
- PassportPrincipal.cs
- FileDialogCustomPlace.cs
- StoreContentChangedEventArgs.cs
- UTF7Encoding.cs
- BindableAttribute.cs
- SqlCacheDependencySection.cs
- Parser.cs
- FormViewDeleteEventArgs.cs
- TimeoutException.cs
- ModelTreeManager.cs
- OdbcConnectionOpen.cs
- SerialReceived.cs
- DataGridViewRowPrePaintEventArgs.cs
- CodeMethodInvokeExpression.cs
- WindowsRebar.cs
- BevelBitmapEffect.cs
- SqlUdtInfo.cs
- UdpDiscoveryMessageFilter.cs
- MonthCalendar.cs
- DelegatedStream.cs
- NativeObjectSecurity.cs
- Tile.cs
- SequentialUshortCollection.cs
- MetadataFile.cs
- InputElement.cs
- RpcAsyncResult.cs
- ITextView.cs
- TextMetrics.cs
- PolyBezierSegment.cs
- StateItem.cs
- IsolatedStoragePermission.cs
- CodeExporter.cs
- BindingNavigator.cs
- PackUriHelper.cs
- WMICapabilities.cs
- HybridDictionary.cs
- CopyAction.cs
- SmtpAuthenticationManager.cs
- CodeFieldReferenceExpression.cs
- LinkedResource.cs
- AutomationTextAttribute.cs
- ValidationEventArgs.cs
- AudioStateChangedEventArgs.cs
- StretchValidation.cs
- TypeResolvingOptions.cs
- Merger.cs
- TableLayout.cs
- WebRequestModuleElementCollection.cs
- EmptyQuery.cs
- FirstMatchCodeGroup.cs
- Visual3DCollection.cs
- EntityDataSourceWizardForm.cs
- DashStyle.cs
- QueryContinueDragEvent.cs
- CustomUserNameSecurityTokenAuthenticator.cs
- UiaCoreTypesApi.cs
- JsonReaderWriterFactory.cs
- DataGridTextBox.cs
- DbProviderConfigurationHandler.cs
- NetCodeGroup.cs
- Zone.cs
- FileSystemInfo.cs
- XPathNodeList.cs
- Mappings.cs
- GridErrorDlg.cs
- CustomCategoryAttribute.cs
- GreenMethods.cs
- HtmlInputFile.cs
- GrowingArray.cs
- TemplateField.cs
- InlineCollection.cs
- HtmlElementEventArgs.cs
- RequestQueryProcessor.cs
- PrefixHandle.cs
- CertificateManager.cs
- prefixendpointaddressmessagefilter.cs
- IgnoreFlushAndCloseStream.cs
- WebServiceHostFactory.cs
- EntityDataSourceDesigner.cs
- MemberHolder.cs
- Utils.cs
- XmlValueConverter.cs
- SqlWorkflowInstanceStoreLock.cs
- NativeWrapper.cs
- unsafeIndexingFilterStream.cs
- ConnectionManagementElementCollection.cs
- ObjectSpanRewriter.cs
- SqlMethods.cs
- LinqDataSourceUpdateEventArgs.cs
- AudioFormatConverter.cs
- TransformedBitmap.cs
- SettingsSavedEventArgs.cs
- DefinitionBase.cs
- CustomAssemblyResolver.cs
- IndicFontClient.cs
- DES.cs
- TerminatorSinks.cs
- WmiPutTraceRecord.cs
- GorillaCodec.cs
- TextTreeNode.cs