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
- XhtmlCssHandler.cs
- SafeBitVector32.cs
- Msec.cs
- CompilerCollection.cs
- MetricEntry.cs
- LassoSelectionBehavior.cs
- RewritingPass.cs
- BitmapEffect.cs
- HelpEvent.cs
- ShaperBuffers.cs
- ContractMapping.cs
- RewritingSimplifier.cs
- HtmlHistory.cs
- ProfilePropertyNameValidator.cs
- DataListItem.cs
- SpecialFolderEnumConverter.cs
- GeneratedContractType.cs
- XPathCompileException.cs
- OpCopier.cs
- CSharpCodeProvider.cs
- SignatureHelper.cs
- MimeImporter.cs
- PageRequestManager.cs
- SharedUtils.cs
- Profiler.cs
- NotifyInputEventArgs.cs
- Journal.cs
- ReflectTypeDescriptionProvider.cs
- PEFileReader.cs
- DesignerEventService.cs
- ClearTypeHintValidation.cs
- ActivityDesignerHighlighter.cs
- XslVisitor.cs
- WindowsStreamSecurityUpgradeProvider.cs
- PageAdapter.cs
- SystemIPv6InterfaceProperties.cs
- NameNode.cs
- XmlRootAttribute.cs
- ButtonChrome.cs
- XmlCharType.cs
- _PooledStream.cs
- DefaultIfEmptyQueryOperator.cs
- Panel.cs
- XPathArrayIterator.cs
- MachineKeySection.cs
- EraserBehavior.cs
- ReferenceTypeElement.cs
- SchemaMerger.cs
- URLString.cs
- Memoizer.cs
- SocketException.cs
- RC2CryptoServiceProvider.cs
- TextTreeUndo.cs
- AnnotationComponentChooser.cs
- DefaultPrintController.cs
- XmlElementAttribute.cs
- TableLayoutSettings.cs
- SQLInt16Storage.cs
- PartialCachingAttribute.cs
- Graph.cs
- HttpCacheParams.cs
- PrintController.cs
- ParallelTimeline.cs
- EmptyControlCollection.cs
- ColumnClickEvent.cs
- DirectoryInfo.cs
- CommandID.cs
- Int16Storage.cs
- GridViewSelectEventArgs.cs
- EventInfo.cs
- RuntimeHandles.cs
- ConnectionsZoneDesigner.cs
- BitmapCodecInfo.cs
- figurelengthconverter.cs
- QilTargetType.cs
- HuffmanTree.cs
- SafeEventHandle.cs
- OutputCacheSettings.cs
- DocumentOrderQuery.cs
- OleDbInfoMessageEvent.cs
- MultiDataTrigger.cs
- TypePropertyEditor.cs
- Block.cs
- PageHandlerFactory.cs
- ValueTable.cs
- ContentIterators.cs
- NativeBuffer.cs
- ThreadLocal.cs
- ReadOnlyDictionary.cs
- MsmqMessageSerializationFormat.cs
- SortExpressionBuilder.cs
- ContentTypeSettingDispatchMessageFormatter.cs
- Fx.cs
- ScriptMethodAttribute.cs
- ExpressionBuilder.cs
- WebPartVerbsEventArgs.cs
- XmlCharType.cs
- TypedDataSetSchemaImporterExtensionFx35.cs
- SafeRegistryHandle.cs
- WinEventHandler.cs