Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / Documents / DocumentReferenceCollection.cs / 1305600 / DocumentReferenceCollection.cs
//---------------------------------------------------------------------------- //// Copyright (C) 2004 by Microsoft Corporation. All rights reserved. // // // Description: // Implements the DocumentReferenceCollection as holder for a collection // of DocumentReference // // History: // 05/07/2004 - Zhenbin Xu (ZhenbinX) - Created. // // //--------------------------------------------------------------------------- namespace System.Windows.Documents { using System; using System.Collections.Generic; using System.Collections.Specialized; using System.Diagnostics; //===================================================================== ////// DocumentReferenceCollection is an ordered collection of DocumentReference /// [CLSCompliant(false)] public sealed class DocumentReferenceCollection : IEnumerable, INotifyCollectionChanged { //------------------------------------------------------------------- // // Connstructors // //---------------------------------------------------------------------- #region Constructors internal DocumentReferenceCollection() { } #endregion Constructors //------------------------------------------------------------------- // // Public Methods // //---------------------------------------------------------------------- #region Public Methods #region IEnumerable /// /// /// public IEnumeratorGetEnumerator() { return _InternalList.GetEnumerator(); } System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() { return ((IEnumerable )this).GetEnumerator(); } #endregion IEnumerable /// /// /// public void Add(DocumentReference item) { int count = _InternalList.Count; _InternalList.Add(item); OnCollectionChanged(NotifyCollectionChangedAction.Add, item, count); } ////// Passes in document reference array to be copied /// public void CopyTo(DocumentReference[] array, int arrayIndex) { _InternalList.CopyTo(array, arrayIndex); } #endregion Public Methods #region Public Properties ////// Count of Document References in collection /// public int Count { get { return _InternalList.Count; } } ////// /// public DocumentReference this[int index] { get { return _InternalList[index]; } } #endregion Public Properties //-------------------------------------------------------------------- // // Public Events // //--------------------------------------------------------------------- #region Public Event ////// Occurs when the collection changes, either by adding or removing an item. /// ////// see public event NotifyCollectionChangedEventHandler CollectionChanged; #endregion Public Event //-------------------------------------------------------------------- // // private Properties // //--------------------------------------------------------------------- #region Private Properties // Aggregated IList private IList/// _InternalList { get { if (_internalList == null) { _internalList = new List (); } return _internalList; } } #endregion Private Properties #region Private Methods //------------------------------------------------------------------- // // Private Methods // //--------------------------------------------------------------------- // fire CollectionChanged event to any listeners private void OnCollectionChanged(NotifyCollectionChangedAction action, object item, int index) { if (CollectionChanged != null) { NotifyCollectionChangedEventArgs args; args = new NotifyCollectionChangedEventArgs(action, item, index); CollectionChanged(this, args); } } #endregion Private Methods //-------------------------------------------------------------------- // // Private Fields // //--------------------------------------------------------------------- #region Private Fields private List _internalList; #endregion Private Fields } } // 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
- ErrorFormatterPage.cs
- COM2ComponentEditor.cs
- DataControlReference.cs
- RequiredFieldValidator.cs
- GPRECT.cs
- SuppressMessageAttribute.cs
- StringPropertyBuilder.cs
- XmlAtomicValue.cs
- ValidationResult.cs
- SymmetricAlgorithm.cs
- XmlSchemaRedefine.cs
- CommandBindingCollection.cs
- EntityConnection.cs
- PagePropertiesChangingEventArgs.cs
- IsolatedStorageFilePermission.cs
- ConfigurationManagerHelperFactory.cs
- TrackBarRenderer.cs
- ErrorWebPart.cs
- SchemaAttDef.cs
- returneventsaver.cs
- TransformerConfigurationWizardBase.cs
- InvalidOperationException.cs
- ToolZone.cs
- DataGridColumnCollection.cs
- ToolStripMenuItemDesigner.cs
- StrokeIntersection.cs
- WebRequestModuleElement.cs
- IdnElement.cs
- BridgeDataRecord.cs
- PreservationFileReader.cs
- AdapterUtil.cs
- WebResourceAttribute.cs
- PrintControllerWithStatusDialog.cs
- FloaterBaseParagraph.cs
- DataGridPagerStyle.cs
- QueryContext.cs
- Scheduler.cs
- OdbcError.cs
- IndicShape.cs
- ReliableChannelListener.cs
- AttachmentCollection.cs
- DataBoundControl.cs
- Util.cs
- PathGeometry.cs
- EventDescriptor.cs
- HTTPNotFoundHandler.cs
- SafeLibraryHandle.cs
- CombinedGeometry.cs
- MenuItemBinding.cs
- XmlWrappingWriter.cs
- ExpressionHelper.cs
- WizardStepBase.cs
- LoaderAllocator.cs
- MemoryPressure.cs
- SiteMapNodeItem.cs
- ContextQuery.cs
- ViewSimplifier.cs
- CodeTypeReferenceExpression.cs
- HtmlInputHidden.cs
- TextCompositionManager.cs
- MD5Cng.cs
- ViewBase.cs
- UseLicense.cs
- Int64Converter.cs
- HttpProfileGroupBase.cs
- WebServiceErrorEvent.cs
- XMLUtil.cs
- IERequestCache.cs
- NaturalLanguageHyphenator.cs
- DateTimeOffsetStorage.cs
- DocumentPaginator.cs
- IssuedTokenParametersElement.cs
- DecimalAnimationBase.cs
- PingReply.cs
- CqlParserHelpers.cs
- TreeViewItem.cs
- Publisher.cs
- InvokeGenerator.cs
- ConnectionPointCookie.cs
- _AcceptOverlappedAsyncResult.cs
- CounterSample.cs
- ConfigXmlReader.cs
- CounterSampleCalculator.cs
- MediaTimeline.cs
- ClaimSet.cs
- WindowsAuthenticationModule.cs
- TemplateGroupCollection.cs
- RectAnimationClockResource.cs
- PasswordTextContainer.cs
- KeyInterop.cs
- EntityDataSourceWrapper.cs
- DataServiceOperationContext.cs
- LambdaCompiler.cs
- UnauthorizedWebPart.cs
- WebPartConnectionCollection.cs
- TransactionManager.cs
- DataSourceCacheDurationConverter.cs
- SmtpAuthenticationManager.cs
- CalendarAutomationPeer.cs
- HttpModuleAction.cs