Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Shared / MS / Internal / SequentialUshortCollection.cs / 1 / SequentialUshortCollection.cs
//---------------------------------------------------------------------------- // // Copyright (c) Microsoft Corporation. All rights reserved. // // // Description: A class that implements ICollectionfor a sequence of numbers [0..n-1]. // // // History: // 03/21/2005 : [....] - Created it. // //--------------------------------------------------------------------------- using System; using System.Windows; using System.Collections; using System.Collections.Generic; using System.Diagnostics; using System.Text; using System.Runtime.InteropServices; using SR=MS.Internal.PresentationCore.SR; using SRID=MS.Internal.PresentationCore.SRID; namespace MS.Internal { internal class SequentialUshortCollection : ICollection { public SequentialUshortCollection(ushort count) { _count = count; } #region ICollection Members public void Add(ushort item) { throw new NotSupportedException(); } public void Clear() { throw new NotSupportedException(); } public bool Contains(ushort item) { return item < _count; } public void CopyTo(ushort[] array, int arrayIndex) { if (array == null) { throw new ArgumentNullException("array"); } if (array.Rank != 1) { throw new ArgumentException(SR.Get(SRID.Collection_BadRank)); } // The extra "arrayIndex >= array.Length" check in because even if _collection.Count // is 0 the index is not allowed to be equal or greater than the length // (from the MSDN ICollection docs) if (arrayIndex < 0 || arrayIndex >= array.Length || (arrayIndex + Count) > array.Length) { throw new ArgumentOutOfRangeException("arrayIndex"); } for (ushort i = 0; i < _count; ++i) array[arrayIndex + i] = i; } public int Count { get { return _count; } } public bool IsReadOnly { get { return true; } } public bool Remove(ushort item) { throw new NotSupportedException(); } #endregion #region IEnumerable Members public IEnumerator GetEnumerator() { for (ushort i = 0; i < _count; ++i) yield return i; } #endregion #region IEnumerable Members IEnumerator IEnumerable.GetEnumerator() { return ((IEnumerable )this).GetEnumerator(); } #endregion private ushort _count; } } // 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
- TableDetailsRow.cs
- DataColumnPropertyDescriptor.cs
- ReadOnlyKeyedCollection.cs
- COAUTHIDENTITY.cs
- KeyTime.cs
- ToolZone.cs
- AssociationSet.cs
- SystemIcmpV4Statistics.cs
- Matrix3D.cs
- Command.cs
- FlowLayoutPanel.cs
- GridViewColumnCollectionChangedEventArgs.cs
- RequestContext.cs
- DictionarySectionHandler.cs
- KnowledgeBase.cs
- MultipartIdentifier.cs
- VScrollProperties.cs
- ToolTip.cs
- DocumentEventArgs.cs
- CDSCollectionETWBCLProvider.cs
- FlowDocumentPage.cs
- ReadOnlyDictionary.cs
- DesignerForm.cs
- LongValidatorAttribute.cs
- DataGridViewRowsRemovedEventArgs.cs
- Instrumentation.cs
- keycontainerpermission.cs
- CheckBoxRenderer.cs
- TextStore.cs
- PublisherIdentityPermission.cs
- DebugView.cs
- FacetValues.cs
- TabPage.cs
- ToolStripPanelSelectionGlyph.cs
- InputProviderSite.cs
- MemberAccessException.cs
- ConnectionManagementElement.cs
- Matrix.cs
- XmlSignatureProperties.cs
- FormViewModeEventArgs.cs
- NumericUpDown.cs
- DataGridColumnHeader.cs
- ActivityCompletionCallbackWrapper.cs
- ExtensionQuery.cs
- LayoutTableCell.cs
- AddInActivator.cs
- QilLiteral.cs
- InputLanguageEventArgs.cs
- ContextMenu.cs
- TablePatternIdentifiers.cs
- ThemeableAttribute.cs
- EventArgs.cs
- ProfileSection.cs
- WebServiceResponse.cs
- XslVisitor.cs
- SqlDataSourceQueryEditorForm.cs
- SqlLiftWhereClauses.cs
- OdbcTransaction.cs
- OperationDescription.cs
- CollectionChangeEventArgs.cs
- MobileControlBuilder.cs
- DbConnectionPool.cs
- COM2IProvidePropertyBuilderHandler.cs
- VarRefManager.cs
- ItemCheckEvent.cs
- WsatTransactionHeader.cs
- SafeRightsManagementHandle.cs
- XsdDuration.cs
- ValidatorUtils.cs
- MenuItemCollectionEditor.cs
- Currency.cs
- MaskedTextProvider.cs
- XmlIterators.cs
- DataRelation.cs
- DetailsViewUpdateEventArgs.cs
- ImageButton.cs
- DelegatingMessage.cs
- WeakReference.cs
- XmlEntityReference.cs
- MulticastNotSupportedException.cs
- PermissionRequestEvidence.cs
- WebPartsPersonalizationAuthorization.cs
- Permission.cs
- PolyQuadraticBezierSegment.cs
- CommandLineParser.cs
- InteropBitmapSource.cs
- PackUriHelper.cs
- BamlLocalizableResource.cs
- ParameterReplacerVisitor.cs
- List.cs
- OleDbErrorCollection.cs
- GridView.cs
- TableRow.cs
- SoapMessage.cs
- AssociationTypeEmitter.cs
- EventsTab.cs
- SignedXml.cs
- Pkcs7Signer.cs
- tooltip.cs
- IntranetCredentialPolicy.cs