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
- MouseGestureConverter.cs
- NumberFormatter.cs
- ContentPosition.cs
- CompositionTarget.cs
- InlineObject.cs
- CodeTypeDelegate.cs
- Filter.cs
- ActivationArguments.cs
- StylusPointPropertyInfo.cs
- WebServiceClientProxyGenerator.cs
- WebPartEventArgs.cs
- BrowsableAttribute.cs
- PasswordTextNavigator.cs
- DateTimeOffset.cs
- MimeXmlReflector.cs
- DataControlImageButton.cs
- SafeSystemMetrics.cs
- WindowsFormsHostPropertyMap.cs
- ActivityTrace.cs
- MailMessageEventArgs.cs
- DBCSCodePageEncoding.cs
- SqlParameterCollection.cs
- MessageBox.cs
- DataObjectMethodAttribute.cs
- DataRowView.cs
- Application.cs
- GridItemCollection.cs
- RoutedEvent.cs
- PolyLineSegmentFigureLogic.cs
- DatatypeImplementation.cs
- RichTextBox.cs
- DataRecordInternal.cs
- relpropertyhelper.cs
- InProcStateClientManager.cs
- BooleanKeyFrameCollection.cs
- CheckBoxRenderer.cs
- HtmlControl.cs
- WebPartTransformer.cs
- XpsFilter.cs
- Helpers.cs
- XmlNodeList.cs
- DataSvcMapFileSerializer.cs
- CustomGrammar.cs
- NameValuePair.cs
- ConstructorNeedsTagAttribute.cs
- Misc.cs
- HybridObjectCache.cs
- ElementsClipboardData.cs
- WMIGenerator.cs
- Accessors.cs
- ComplexBindingPropertiesAttribute.cs
- WorkflowInstanceProxy.cs
- Repeater.cs
- XmlSchemaSet.cs
- DefaultAssemblyResolver.cs
- SafeArrayRankMismatchException.cs
- HandleCollector.cs
- PaperSize.cs
- WorkflowInstance.cs
- ContextBase.cs
- RichTextBox.cs
- Blend.cs
- SimpleLine.cs
- MenuItemCollection.cs
- DataGridViewSelectedColumnCollection.cs
- DiscoveryDocumentReference.cs
- ConstantCheck.cs
- ReachObjectContext.cs
- StateBag.cs
- DependencyObjectType.cs
- RegexMatchCollection.cs
- BitStack.cs
- TextSegment.cs
- BitmapVisualManager.cs
- InvalidProgramException.cs
- TreeChangeInfo.cs
- EntityWrapper.cs
- RawAppCommandInputReport.cs
- TextCollapsingProperties.cs
- ActiveXHost.cs
- NetworkInformationPermission.cs
- DataRowCollection.cs
- ToolStripOverflow.cs
- ThemeableAttribute.cs
- Point3DKeyFrameCollection.cs
- PrePrepareMethodAttribute.cs
- FormViewPagerRow.cs
- DropShadowBitmapEffect.cs
- PolyBezierSegment.cs
- ImagingCache.cs
- VisualTreeUtils.cs
- CalculatedColumn.cs
- TextFormatterHost.cs
- UTF32Encoding.cs
- RtfToXamlLexer.cs
- PixelFormatConverter.cs
- DbConnectionStringBuilder.cs
- WebCategoryAttribute.cs
- Rotation3D.cs
- HotSpot.cs