Code:
/ FX-1434 / FX-1434 / 1.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
- TemplatePropertyEntry.cs
- PageAdapter.cs
- DataGridPreparingCellForEditEventArgs.cs
- WpfXamlLoader.cs
- SamlNameIdentifierClaimResource.cs
- Figure.cs
- EventLogger.cs
- AxisAngleRotation3D.cs
- StreamGeometry.cs
- RootAction.cs
- CustomCategoryAttribute.cs
- TableCellAutomationPeer.cs
- UnsafeNativeMethods.cs
- UniqueEventHelper.cs
- GeometryGroup.cs
- TablePatternIdentifiers.cs
- ScriptReference.cs
- ResourceDictionaryCollection.cs
- Models.cs
- RadioButtonStandardAdapter.cs
- ConfigurationSectionGroup.cs
- MenuItemAutomationPeer.cs
- WindowsPen.cs
- NameValueCollection.cs
- ApplicationServiceManager.cs
- SqlError.cs
- MarshalByRefObject.cs
- ObsoleteAttribute.cs
- codemethodreferenceexpression.cs
- NumberSubstitution.cs
- PenLineCapValidation.cs
- StringValueSerializer.cs
- TreeNodeBinding.cs
- TileBrush.cs
- ItemCollection.cs
- MetadataCollection.cs
- ChannelPool.cs
- OrderedParallelQuery.cs
- GradientStop.cs
- DelegatedStream.cs
- UrlMappingCollection.cs
- Library.cs
- TextOnlyOutput.cs
- InfoCardAsymmetricCrypto.cs
- NamedObject.cs
- ViewCellRelation.cs
- Paragraph.cs
- AssociationTypeEmitter.cs
- DynamicMethod.cs
- codemethodreferenceexpression.cs
- SubclassTypeValidator.cs
- Part.cs
- MatrixAnimationBase.cs
- Utils.cs
- DataGridViewLinkColumn.cs
- _KerberosClient.cs
- SqlDataSourceFilteringEventArgs.cs
- LassoHelper.cs
- BamlMapTable.cs
- RelationshipEndCollection.cs
- TraceHandler.cs
- TrackBar.cs
- IPPacketInformation.cs
- ConstraintConverter.cs
- StreamReader.cs
- PackagePartCollection.cs
- DataTemplateKey.cs
- _TLSstream.cs
- EventSinkHelperWriter.cs
- CodeDomSerializerBase.cs
- DocumentViewer.cs
- KeyedHashAlgorithm.cs
- WSFederationHttpBindingCollectionElement.cs
- Interlocked.cs
- TemplatedMailWebEventProvider.cs
- BooleanToVisibilityConverter.cs
- InternalBase.cs
- HeaderedContentControl.cs
- MatrixCamera.cs
- Calendar.cs
- ToolbarAUtomationPeer.cs
- OracleException.cs
- GridViewItemAutomationPeer.cs
- ByteFacetDescriptionElement.cs
- RemotingConfigParser.cs
- HybridObjectCache.cs
- MembershipValidatePasswordEventArgs.cs
- Line.cs
- HtmlTernaryTree.cs
- TypeTypeConverter.cs
- DropSource.cs
- Utilities.cs
- ForeignKeyConstraint.cs
- EnumType.cs
- RequestCachingSection.cs
- TreeNodeBinding.cs
- XPathMultyIterator.cs
- RawStylusInputReport.cs
- SystemInformation.cs
- XPathBinder.cs