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
- ThicknessConverter.cs
- HTMLTextWriter.cs
- ObjectAnimationUsingKeyFrames.cs
- TraceInternal.cs
- RuntimeCompatibilityAttribute.cs
- TableLayoutPanelCellPosition.cs
- ISessionStateStore.cs
- SQLByte.cs
- SqlDataSourceCache.cs
- InkCollectionBehavior.cs
- IisTraceListener.cs
- ComplexBindingPropertiesAttribute.cs
- SiteMapNodeCollection.cs
- IDataContractSurrogate.cs
- HatchBrush.cs
- ParseChildrenAsPropertiesAttribute.cs
- SizeChangedEventArgs.cs
- Renderer.cs
- ExpressionNode.cs
- VectorAnimationUsingKeyFrames.cs
- LinkDescriptor.cs
- WSHttpBindingBaseElement.cs
- XmlWrappingWriter.cs
- HttpClientCertificate.cs
- ImageListImageEditor.cs
- ListInitExpression.cs
- XmlSchemaAttributeGroupRef.cs
- BuildManagerHost.cs
- RequestStatusBarUpdateEventArgs.cs
- ListArgumentProvider.cs
- ExtendedProperty.cs
- EntityConnectionStringBuilderItem.cs
- PatternMatcher.cs
- StretchValidation.cs
- DesignTimeSiteMapProvider.cs
- ImageListImageEditor.cs
- UnsafeNativeMethods.cs
- DisableDpiAwarenessAttribute.cs
- TextPointerBase.cs
- CodeAttachEventStatement.cs
- FixUpCollection.cs
- XmlSchema.cs
- CheckBoxList.cs
- _FtpDataStream.cs
- XmlSchemaType.cs
- EnterpriseServicesHelper.cs
- JsonWriter.cs
- HtmlControl.cs
- ObjectTag.cs
- PaperSource.cs
- HatchBrush.cs
- URIFormatException.cs
- Debugger.cs
- NodeInfo.cs
- XPathScanner.cs
- PointHitTestParameters.cs
- IntranetCredentialPolicy.cs
- SystemInfo.cs
- Int16AnimationUsingKeyFrames.cs
- Operator.cs
- QueryableFilterRepeater.cs
- GetLedgerEntryForRecipientRequest.cs
- StsCommunicationException.cs
- Debug.cs
- ListViewInsertedEventArgs.cs
- PartialList.cs
- StylusEventArgs.cs
- DiscoveryDocumentSerializer.cs
- NameValueFileSectionHandler.cs
- ModifierKeysValueSerializer.cs
- DataGridViewColumnTypeEditor.cs
- UTF7Encoding.cs
- MailHeaderInfo.cs
- SchemaExporter.cs
- WmlPageAdapter.cs
- ControlEvent.cs
- LaxModeSecurityHeaderElementInferenceEngine.cs
- Stream.cs
- HostedAspNetEnvironment.cs
- XmlEntity.cs
- MethodBody.cs
- StatusBar.cs
- ListControlBuilder.cs
- TreeViewBindingsEditor.cs
- EditingMode.cs
- Int64Animation.cs
- DataGridHeaderBorder.cs
- WorkflowRuntimeServiceElementCollection.cs
- FileStream.cs
- MarshalByRefObject.cs
- TreeNodeCollection.cs
- AnonymousIdentificationSection.cs
- Pair.cs
- ThreadPool.cs
- GrammarBuilderBase.cs
- StorageEntityTypeMapping.cs
- ArraySegment.cs
- Canvas.cs
- HtmlString.cs
- PropertyRecord.cs