Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / untmp / whidbey / QFE / ndp / clr / src / BCL / System / Collections / Generic / DebugView.cs / 1 / DebugView.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== /*============================================================================== ** ** ** ** Purpose: DebugView class for generic collections ** ** =============================================================================*/ namespace System.Collections.Generic { using System; using System.Collections.ObjectModel; using System.Security.Permissions; using System.Diagnostics; // // VS IDE can't differentiate between types with the same name from different // assembly. So we need to use different names for collection debug view for // collections in mscorlib.dll and system.dll. // internal sealed class Mscorlib_CollectionDebugView{ private ICollection collection; public Mscorlib_CollectionDebugView(ICollection collection) { if (collection == null) ThrowHelper.ThrowArgumentNullException(ExceptionArgument.collection); this.collection = collection; } [DebuggerBrowsable(DebuggerBrowsableState.RootHidden)] public T[] Items { get { T[] items = new T[collection.Count]; collection.CopyTo(items, 0); return items; } } } internal sealed class Mscorlib_DictionaryKeyCollectionDebugView { private ICollection collection; public Mscorlib_DictionaryKeyCollectionDebugView(ICollection collection) { if (collection == null) ThrowHelper.ThrowArgumentNullException(ExceptionArgument.collection); this.collection = collection; } [DebuggerBrowsable(DebuggerBrowsableState.RootHidden)] public TKey[] Items { get { TKey[] items = new TKey[collection.Count]; collection.CopyTo(items, 0); return items; } } } internal sealed class Mscorlib_DictionaryValueCollectionDebugView { private ICollection collection; public Mscorlib_DictionaryValueCollectionDebugView(ICollection collection) { if (collection == null) ThrowHelper.ThrowArgumentNullException(ExceptionArgument.collection); this.collection = collection; } [DebuggerBrowsable(DebuggerBrowsableState.RootHidden)] public TValue[] Items { get { TValue[] items = new TValue[collection.Count]; collection.CopyTo(items, 0); return items; } } } internal sealed class Mscorlib_DictionaryDebugView { private IDictionary dict; public Mscorlib_DictionaryDebugView(IDictionary dictionary) { if (dictionary == null) ThrowHelper.ThrowArgumentNullException(ExceptionArgument.dictionary); this.dict = dictionary; } [DebuggerBrowsable(DebuggerBrowsableState.RootHidden)] public KeyValuePair [] Items { get { KeyValuePair [] items = new KeyValuePair [dict.Count]; dict.CopyTo(items, 0); return items; } } } internal sealed class Mscorlib_KeyedCollectionDebugView { private KeyedCollection kc; public Mscorlib_KeyedCollectionDebugView(KeyedCollection keyedCollection) { if (keyedCollection == null) { throw new ArgumentNullException("keyedCollection"); } kc = keyedCollection; } [DebuggerBrowsable(DebuggerBrowsableState.RootHidden)] public T[] Items { get { T[] items = new T[kc.Count]; kc.CopyTo(items, 0); return items; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- SqlDataSourceEnumerator.cs
- Activator.cs
- ITreeGenerator.cs
- SqlUdtInfo.cs
- SessionIDManager.cs
- ListItemParagraph.cs
- DataSourceDesigner.cs
- PeerResolverMode.cs
- LinqDataView.cs
- SplitContainerDesigner.cs
- InvalidContentTypeException.cs
- SQLByteStorage.cs
- NativeMethods.cs
- RuleAction.cs
- FrameworkReadOnlyPropertyMetadata.cs
- XmlSchemaComplexContentRestriction.cs
- SpanIndex.cs
- Point4D.cs
- WorkItem.cs
- CmsInterop.cs
- AQNBuilder.cs
- SafeLibraryHandle.cs
- ClientSettingsProvider.cs
- SizeAnimation.cs
- MSAAEventDispatcher.cs
- Classification.cs
- StringResourceManager.cs
- MemberInfoSerializationHolder.cs
- CodeMemberProperty.cs
- GeometryHitTestResult.cs
- MediaContext.cs
- MDIControlStrip.cs
- DataGridRow.cs
- XpsResourcePolicy.cs
- DataGridViewRowsAddedEventArgs.cs
- DesignerUtility.cs
- PartBasedPackageProperties.cs
- RolePrincipal.cs
- safex509handles.cs
- StructuralObject.cs
- PersonalizationAdministration.cs
- PropertyGroupDescription.cs
- AnnotationHelper.cs
- TrackingExtract.cs
- GridViewRowCollection.cs
- ServiceParser.cs
- StateBag.cs
- KeyManager.cs
- WebConvert.cs
- ObjectDataSourceStatusEventArgs.cs
- StrongNameUtility.cs
- GlyphTypeface.cs
- CRYPTPROTECT_PROMPTSTRUCT.cs
- Separator.cs
- ManagementException.cs
- DurableDispatcherAddressingFault.cs
- DataStreams.cs
- XmlSchemaRedefine.cs
- MainMenu.cs
- WebPartConnectionsCancelEventArgs.cs
- ThreadAbortException.cs
- SHA256Managed.cs
- ConstantCheck.cs
- SemanticBasicElement.cs
- CodeTypeParameterCollection.cs
- LinqToSqlWrapper.cs
- CompositeControlDesigner.cs
- DatePicker.cs
- SignedInfo.cs
- BufferModesCollection.cs
- TrackingProvider.cs
- CompModHelpers.cs
- ServiceDescriptionSerializer.cs
- CollectionViewSource.cs
- OdbcCommandBuilder.cs
- XpsLiterals.cs
- SQLBoolean.cs
- SqlDataReaderSmi.cs
- SiteMapHierarchicalDataSourceView.cs
- ControlCachePolicy.cs
- DrawingVisual.cs
- Line.cs
- DeviceContext.cs
- StateMachine.cs
- SafeIUnknown.cs
- VisualProxy.cs
- TypeConverterValueSerializer.cs
- ErrorProvider.cs
- CalculatedColumn.cs
- DataGridTextBox.cs
- LiteralControl.cs
- DocumentViewerConstants.cs
- CodeSubDirectoriesCollection.cs
- DataGridViewColumnConverter.cs
- webclient.cs
- ServicePoint.cs
- _SslStream.cs
- PingOptions.cs
- DrawListViewItemEventArgs.cs
- WebServiceResponseDesigner.cs