Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / CompMod / System / CodeDOM / CodeNamespaceImportCollection.cs / 1 / CodeNamespaceImportCollection.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.CodeDom { using System.Diagnostics; using System; using System.Collections; using System.Runtime.InteropServices; using System.Globalization; ////// [ ClassInterface(ClassInterfaceType.AutoDispatch), ComVisible(true), Serializable, ] public class CodeNamespaceImportCollection : IList { private ArrayList data = new ArrayList(); private Hashtable keys = new Hashtable(StringComparer.OrdinalIgnoreCase); ////// Manages a collection of ///objects. /// /// public CodeNamespaceImport this[int index] { get { return ((CodeNamespaceImport)data[index]); } set { data[index] = value; SyncKeys(); } } ////// Indexer method that provides collection access. /// ////// public int Count { get { return data.Count; } } ////// Gets or sets the number of namespaces in the collection. /// ///bool IList.IsReadOnly { get { return false; } } /// bool IList.IsFixedSize { get { return false; } } /// /// public void Add(CodeNamespaceImport value) { if (!keys.ContainsKey(value.Namespace)) { keys[value.Namespace] = value; data.Add(value); } } ////// Adds a namespace import to the collection. /// ////// public void AddRange(CodeNamespaceImport[] value) { if (value == null) { throw new ArgumentNullException("value"); } foreach (CodeNamespaceImport c in value) { Add(c); } } ////// Adds a set of ///objects to the collection. /// /// public void Clear() { data.Clear(); keys.Clear(); } ////// Clears the collection of members. /// ////// private void SyncKeys() { keys = new Hashtable(StringComparer.OrdinalIgnoreCase); foreach(CodeNamespaceImport c in this) { keys[c.Namespace] = c; } } ////// Makes the collection of keys synchronised with the data. /// ////// public IEnumerator GetEnumerator() { return data.GetEnumerator(); } ////// Gets an enumerator that enumerates the collection members. /// ///object IList.this[int index] { get { return this[index]; } set { this[index] = (CodeNamespaceImport)value; SyncKeys(); } } /// int ICollection.Count { get { return Count; } } /// bool ICollection.IsSynchronized { get { return false; } } /// object ICollection.SyncRoot { get { return null; } } /// void ICollection.CopyTo(Array array, int index) { data.CopyTo(array, index); } /// IEnumerator IEnumerable.GetEnumerator() { return GetEnumerator(); } /// int IList.Add(object value) { return data.Add((CodeNamespaceImport)value); } /// void IList.Clear() { Clear(); } /// bool IList.Contains(object value) { return data.Contains(value); } /// int IList.IndexOf(object value) { return data.IndexOf((CodeNamespaceImport)value); } /// void IList.Insert(int index, object value) { data.Insert(index, (CodeNamespaceImport)value); SyncKeys(); } /// void IList.Remove(object value) { data.Remove((CodeNamespaceImport)value); SyncKeys(); } /// void IList.RemoveAt(int index) { data.RemoveAt(index); SyncKeys(); } } }
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ReadOnlyPropertyMetadata.cs
- DirectoryObjectSecurity.cs
- SpecularMaterial.cs
- LineServicesRun.cs
- TextCompositionManager.cs
- StickyNoteContentControl.cs
- HotSpotCollection.cs
- shaperfactoryquerycachekey.cs
- FrameworkRichTextComposition.cs
- X509CertificateInitiatorClientCredential.cs
- CodeSnippetStatement.cs
- EditorBrowsableAttribute.cs
- DataView.cs
- ClientEventManager.cs
- ObjectConverter.cs
- CategoryNameCollection.cs
- UInt16Converter.cs
- DockAndAnchorLayout.cs
- ListViewGroupConverter.cs
- Listbox.cs
- ToolStripTextBox.cs
- WebPartEditVerb.cs
- unitconverter.cs
- DataList.cs
- SmtpFailedRecipientsException.cs
- TraceFilter.cs
- RadioButtonBaseAdapter.cs
- String.cs
- StringFunctions.cs
- MimeXmlImporter.cs
- NavigationService.cs
- SafePEFileHandle.cs
- Point4DValueSerializer.cs
- WebControl.cs
- GroupStyle.cs
- BitmapCodecInfo.cs
- DeploymentSectionCache.cs
- MessageBox.cs
- FrameAutomationPeer.cs
- HttpCachePolicy.cs
- SqlDeflator.cs
- IteratorFilter.cs
- Terminate.cs
- HostDesigntimeLicenseContext.cs
- IndentTextWriter.cs
- EventLogEntry.cs
- DropShadowBitmapEffect.cs
- OutOfProcStateClientManager.cs
- SetterBaseCollection.cs
- PackageDigitalSignature.cs
- EditingCommands.cs
- RelationshipConverter.cs
- ObjectDataSourceView.cs
- HtmlWindow.cs
- StrokeCollectionConverter.cs
- StickyNoteAnnotations.cs
- SqlClientMetaDataCollectionNames.cs
- RangeValueProviderWrapper.cs
- ControlCodeDomSerializer.cs
- PreviewPrintController.cs
- UnmanagedMemoryAccessor.cs
- ComplexTypeEmitter.cs
- StrongNamePublicKeyBlob.cs
- ConfigurationElement.cs
- ServiceOperationWrapper.cs
- ReachFixedPageSerializer.cs
- RTTrackingProfile.cs
- DataProviderNameConverter.cs
- CurrentChangingEventArgs.cs
- _NtlmClient.cs
- FacetValueContainer.cs
- NullableConverter.cs
- XmlSchemaInferenceException.cs
- HttpHandlerAction.cs
- ActivityExecutorSurrogate.cs
- PasswordTextContainer.cs
- CodeLinePragma.cs
- KnownTypesHelper.cs
- DocumentXmlWriter.cs
- FolderLevelBuildProvider.cs
- FlatButtonAppearance.cs
- XmlEntity.cs
- SettingsSavedEventArgs.cs
- DependencyPropertyDescriptor.cs
- AudioFormatConverter.cs
- TransformerConfigurationWizardBase.cs
- ArgumentOutOfRangeException.cs
- TransformerInfoCollection.cs
- DataGridItemCollection.cs
- GetIsBrowserClientRequest.cs
- ToolboxComponentsCreatingEventArgs.cs
- DropDownButton.cs
- ErrorWebPart.cs
- PageWrapper.cs
- EnumConverter.cs
- CellConstantDomain.cs
- SendMailErrorEventArgs.cs
- Bits.cs
- FrameworkElement.cs
- ModifiableIteratorCollection.cs