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
- LogStream.cs
- InProcStateClientManager.cs
- KeyedCollection.cs
- TriggerActionCollection.cs
- EditorZone.cs
- BuildResultCache.cs
- TypeDependencyAttribute.cs
- BooleanFunctions.cs
- CoreSwitches.cs
- PenContexts.cs
- securestring.cs
- TextTreeObjectNode.cs
- CookieProtection.cs
- WindowProviderWrapper.cs
- SudsCommon.cs
- PointIndependentAnimationStorage.cs
- DSASignatureFormatter.cs
- Currency.cs
- ClrPerspective.cs
- WebHttpSecurityModeHelper.cs
- LockCookie.cs
- PropertyToken.cs
- RectValueSerializer.cs
- ListView.cs
- SafeFileHandle.cs
- TableLayoutStyleCollection.cs
- TimersDescriptionAttribute.cs
- AssemblyNameProxy.cs
- ChannelBinding.cs
- BindingElement.cs
- OleTxTransaction.cs
- XamlReader.cs
- Point3DAnimation.cs
- CodeRemoveEventStatement.cs
- ObservableDictionary.cs
- RegistryKey.cs
- PTConverter.cs
- MultipartContentParser.cs
- PopupControlService.cs
- RepeaterCommandEventArgs.cs
- Trace.cs
- RewritingProcessor.cs
- InternalBase.cs
- SqlCommand.cs
- StoreContentChangedEventArgs.cs
- ExecutionEngineException.cs
- RotateTransform.cs
- BindingList.cs
- CanonicalFontFamilyReference.cs
- CookielessHelper.cs
- SendActivity.cs
- XPathAxisIterator.cs
- SaveFileDialog.cs
- DocumentViewerAutomationPeer.cs
- NotificationContext.cs
- CustomAttribute.cs
- TemplateXamlParser.cs
- SiteMapNode.cs
- AssemblyCollection.cs
- SplashScreen.cs
- Misc.cs
- MarshalByRefObject.cs
- TreeNodeBindingCollection.cs
- Validator.cs
- EventRouteFactory.cs
- IHttpResponseInternal.cs
- AttachedPropertyBrowsableAttribute.cs
- ConfigXmlComment.cs
- InputEventArgs.cs
- XmlIncludeAttribute.cs
- ToolStripPanel.cs
- OpenTypeLayout.cs
- Number.cs
- ClientApiGenerator.cs
- ResourceKey.cs
- ItemsPresenter.cs
- SoapServerProtocol.cs
- TableLayoutCellPaintEventArgs.cs
- WebZone.cs
- DetailsViewRowCollection.cs
- XmlValidatingReader.cs
- QilDataSource.cs
- Polygon.cs
- SharedDp.cs
- DtdParser.cs
- Site.cs
- Msmq4SubqueuePoisonHandler.cs
- TiffBitmapDecoder.cs
- PropertyValueChangedEvent.cs
- IPAddressCollection.cs
- ProcessMonitor.cs
- PromptStyle.cs
- RichTextBoxDesigner.cs
- StrokeSerializer.cs
- XmlSchemaObjectCollection.cs
- CompensatableTransactionScopeActivityDesigner.cs
- DesignerTransaction.cs
- TextFormatterContext.cs
- Label.cs
- DataGridTableCollection.cs