Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / WinForms / Managed / System / WinForms / NumericUpDownAccelerationCollection.cs / 1305376 / NumericUpDownAccelerationCollection.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Windows.Forms { using System; using System.Diagnostics; using System.Collections; using System.Collections.Generic; using System.ComponentModel; ////// Represents a SORTED collection of NumericUpDownAcceleration objects in the NumericUpDown Control. /// The elements in the collection are sorted by the NumericUpDownAcceleration.Seconds property. /// [ListBindable(false)] public class NumericUpDownAccelerationCollection : MarshalByRefObject, ICollection, IEnumerable { List items; /// ICollection implementation. /// /// Adds an item (NumericUpDownAcceleration object) to the ICollection. /// The item is added preserving the collection sorted. /// public void Add(NumericUpDownAcceleration acceleration) { if( acceleration == null ) { throw new ArgumentNullException("acceleration"); } // Keep the array sorted, insert in the right spot. int index = 0; while( index < this.items.Count ) { if( acceleration.Seconds < this.items[index].Seconds ) { break; } index++; } this.items.Insert(index, acceleration); } ////// Removes all items from the ICollection. /// public void Clear() { this.items.Clear(); } ////// Determines whether the IList contains a specific value. /// public bool Contains(NumericUpDownAcceleration acceleration) { return this.items.Contains(acceleration); } ////// Copies the elements of the ICollection to an Array, starting at a particular Array index. /// public void CopyTo(NumericUpDownAcceleration[] array, int index) { this.items.CopyTo(array, index); } ////// Gets the number of elements contained in the ICollection. /// public int Count { get {return this.items.Count;} } ////// Gets a value indicating whether the ICollection is read-only. /// This collection property returns false always. /// public bool IsReadOnly { get {return false;} } ////// Removes the specified item from the ICollection. /// public bool Remove(NumericUpDownAcceleration acceleration) { return this.items.Remove(acceleration); } /// IEnumerableimplementation. /// /// Returns an enumerator that can iterate through the collection. /// IEnumeratorIEnumerable .GetEnumerator() { return this.items.GetEnumerator(); } System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() { return ((IEnumerable)items).GetEnumerator(); } /// NumericUpDownAccelerationCollection methods. /// /// Class constructor. /// public NumericUpDownAccelerationCollection() { this.items = new List(); } /// /// Adds the elements of specified array to the collection, keeping the collection sorted. /// public void AddRange(params NumericUpDownAcceleration[] accelerations) { if (accelerations == null) { throw new ArgumentNullException("accelerations"); } // Accept the range only if ALL elements in the array are not null. foreach (NumericUpDownAcceleration acceleration in accelerations) { if (acceleration == null) { throw new ArgumentNullException(SR.GetString(SR.NumericUpDownAccelerationCollectionAtLeastOneEntryIsNull)); } } // The expected array size is typically small (5 items?), so we don't need to try to be smarter about the // way we add the elements to the collection, just call Add. foreach (NumericUpDownAcceleration acceleration in accelerations) { this.Add(acceleration); } } ////// Gets (ReadOnly) the element at the specified index. In C#, this property is the indexer for /// the IList class. /// public NumericUpDownAcceleration this[int index] { get { return this.items[index]; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ObjectDataProvider.cs
- PluggableProtocol.cs
- CodeMethodReturnStatement.cs
- HttpServerChannel.cs
- ReaderWriterLock.cs
- ResizeGrip.cs
- baseshape.cs
- _CommandStream.cs
- QuaternionKeyFrameCollection.cs
- IPPacketInformation.cs
- COM2Enum.cs
- DelayedRegex.cs
- ArraySubsetEnumerator.cs
- XslTransform.cs
- AccessedThroughPropertyAttribute.cs
- ToggleButtonAutomationPeer.cs
- DataGridViewHitTestInfo.cs
- _NegoStream.cs
- DesignerActionGlyph.cs
- ClickablePoint.cs
- ObjectStateManager.cs
- ExternalDataExchangeService.cs
- ObjRef.cs
- HttpCookiesSection.cs
- SqlBooleanizer.cs
- TextElementEditingBehaviorAttribute.cs
- TdsParserHelperClasses.cs
- Panel.cs
- BoundsDrawingContextWalker.cs
- OutOfMemoryException.cs
- DataDocumentXPathNavigator.cs
- ProviderCollection.cs
- SchemaNamespaceManager.cs
- ExternalException.cs
- SafeTimerHandle.cs
- InvokeWebService.cs
- LinearGradientBrush.cs
- _CookieModule.cs
- WorkflowInstanceAbortedRecord.cs
- XmlSchemaObjectCollection.cs
- DynamicDiscoSearcher.cs
- IInstanceTable.cs
- LassoHelper.cs
- WindowsBrush.cs
- PreviewKeyDownEventArgs.cs
- WSTrustFeb2005.cs
- MessageQueuePermissionEntry.cs
- SharedStatics.cs
- ChangeConflicts.cs
- WpfWebRequestHelper.cs
- DataIdProcessor.cs
- ZipIOFileItemStream.cs
- ConfigurationPropertyAttribute.cs
- CommandManager.cs
- CacheVirtualItemsEvent.cs
- CounterSet.cs
- DataObjectCopyingEventArgs.cs
- StateRuntime.cs
- Table.cs
- WeakReferenceEnumerator.cs
- CuspData.cs
- LocalizabilityAttribute.cs
- IsolatedStorageFilePermission.cs
- WebServiceClientProxyGenerator.cs
- DesigntimeLicenseContextSerializer.cs
- ServicesUtilities.cs
- Vector3DConverter.cs
- StylusCollection.cs
- X509Utils.cs
- AsyncPostBackTrigger.cs
- QueryAccessibilityHelpEvent.cs
- XmlImplementation.cs
- SafeSystemMetrics.cs
- SortKey.cs
- CngProperty.cs
- Tool.cs
- AspNetPartialTrustHelpers.cs
- BaseResourcesBuildProvider.cs
- InvalidFilterCriteriaException.cs
- MenuItemAutomationPeer.cs
- Rule.cs
- SharedRuntimeState.cs
- BitmapEffect.cs
- Region.cs
- SecurityKeyEntropyMode.cs
- ComponentResourceManager.cs
- ScriptControl.cs
- ActivityExecutionFilter.cs
- WebResourceUtil.cs
- CellRelation.cs
- ConfigurationSection.cs
- ProtocolsConfigurationEntry.cs
- SamlConditions.cs
- TypeGeneratedEventArgs.cs
- Enumerable.cs
- CodePageEncoding.cs
- CodeIdentifiers.cs
- TypeElement.cs
- ConfigurationSettings.cs
- GradientStop.cs