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
- ImpersonateTokenRef.cs
- SortAction.cs
- SettingsProviderCollection.cs
- Win32Native.cs
- EntityType.cs
- WpfSharedBamlSchemaContext.cs
- DialogResultConverter.cs
- PropertyChangedEventArgs.cs
- ExpressionBuilderContext.cs
- FrameworkElement.cs
- SerializationInfoEnumerator.cs
- AnnotationResourceChangedEventArgs.cs
- ToolStripLocationCancelEventArgs.cs
- SecurityTokenException.cs
- VectorAnimation.cs
- XsdCachingReader.cs
- TypeConverterValueSerializer.cs
- Focus.cs
- TextHidden.cs
- MimeTypeAttribute.cs
- DropShadowEffect.cs
- webbrowsersite.cs
- Matrix3D.cs
- ScaleTransform3D.cs
- DataGridViewHitTestInfo.cs
- httpapplicationstate.cs
- OrderByExpression.cs
- sqlpipe.cs
- MyContact.cs
- ContainsRowNumberChecker.cs
- PackageProperties.cs
- TableLayoutSettingsTypeConverter.cs
- ValueChangedEventManager.cs
- ServiceHttpHandlerFactory.cs
- ByteFacetDescriptionElement.cs
- ToolStripPanelCell.cs
- XmlElementAttributes.cs
- TdsRecordBufferSetter.cs
- PolicyImporterElementCollection.cs
- ListenerConfig.cs
- Group.cs
- DuplexClientBase.cs
- LogicalExpressionEditor.cs
- ToolStripPanelRenderEventArgs.cs
- DesignerOptionService.cs
- HttpCachePolicyWrapper.cs
- DummyDataSource.cs
- XPathSelfQuery.cs
- SimpleBitVector32.cs
- DesignerDataConnection.cs
- DocumentOrderComparer.cs
- StringArrayConverter.cs
- TemplateApplicationHelper.cs
- UICuesEvent.cs
- AsymmetricKeyExchangeFormatter.cs
- AsyncOperation.cs
- XmlCharCheckingReader.cs
- BindableTemplateBuilder.cs
- securitycriticaldataformultiplegetandset.cs
- ListViewInsertEventArgs.cs
- XmlHierarchicalDataSourceView.cs
- BuildProvider.cs
- SqlCacheDependencyDatabaseCollection.cs
- CSharpCodeProvider.cs
- PageRanges.cs
- ButtonStandardAdapter.cs
- ToolStripOverflowButton.cs
- dbdatarecord.cs
- GifBitmapDecoder.cs
- ComboBox.cs
- XmlDataSourceView.cs
- SortKey.cs
- RemoteDebugger.cs
- SqlCacheDependencyDatabaseCollection.cs
- SelectionHighlightInfo.cs
- RouteCollection.cs
- XmlWhitespace.cs
- hresults.cs
- Command.cs
- DescendantBaseQuery.cs
- InfocardInteractiveChannelInitializer.cs
- _NegoState.cs
- WebServiceTypeData.cs
- ExtenderHelpers.cs
- COM2ColorConverter.cs
- UnsafeNativeMethods.cs
- IndentTextWriter.cs
- ActivityBindForm.Designer.cs
- SerializationHelper.cs
- LayoutUtils.cs
- RawStylusSystemGestureInputReport.cs
- PaperSource.cs
- Membership.cs
- ListItemCollection.cs
- XPathBinder.cs
- COM2IPerPropertyBrowsingHandler.cs
- DesignerDataView.cs
- StylusPointProperties.cs
- Decimal.cs
- HwndStylusInputProvider.cs