Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / wpf / src / Framework / System / Windows / Documents / DocumentReferenceCollection.cs / 1 / 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 IEnumerator GetEnumerator()
{
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.
//----------------------------------------------------------------------------
//
// 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 IEnumerator GetEnumerator()
{
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
- IndicCharClassifier.cs
- ConditionBrowserDialog.cs
- NotifyCollectionChangedEventArgs.cs
- basenumberconverter.cs
- BatchWriter.cs
- ViewBox.cs
- XPathArrayIterator.cs
- PatternMatcher.cs
- ZipPackage.cs
- CalendarAutoFormat.cs
- TextEncodedRawTextWriter.cs
- XmlSerializerVersionAttribute.cs
- DataGridRowClipboardEventArgs.cs
- ExtensibleClassFactory.cs
- HandlerFactoryCache.cs
- MD5CryptoServiceProvider.cs
- DtcInterfaces.cs
- ZipFileInfoCollection.cs
- ErrorCodes.cs
- XmlSchemaCompilationSettings.cs
- MulticastNotSupportedException.cs
- DataRecord.cs
- ThreadAbortException.cs
- ThrowHelper.cs
- ValidatorCompatibilityHelper.cs
- CheckBoxRenderer.cs
- DataViewSettingCollection.cs
- XPathExpr.cs
- FlatButtonAppearance.cs
- BindingContext.cs
- ResourceDictionaryCollection.cs
- BuildProviderAppliesToAttribute.cs
- WebPartDisplayModeCollection.cs
- TaskHelper.cs
- InputEventArgs.cs
- HttpHandlerActionCollection.cs
- UnauthorizedWebPart.cs
- BaseTypeViewSchema.cs
- RegistrationServices.cs
- SchemaNames.cs
- RenderTargetBitmap.cs
- MetadataItemEmitter.cs
- FileLogRecordHeader.cs
- Variable.cs
- RequestCachePolicyConverter.cs
- TimeSpanOrInfiniteConverter.cs
- SliderAutomationPeer.cs
- BitmapSource.cs
- ModelPropertyImpl.cs
- ToolStripSplitStackLayout.cs
- XmlSchemaSimpleType.cs
- TextLineBreak.cs
- ListItemConverter.cs
- ResourceWriter.cs
- IRCollection.cs
- XmlQualifiedName.cs
- MediaSystem.cs
- ToolStripItem.cs
- GridPattern.cs
- AdornedElementPlaceholder.cs
- StringConverter.cs
- MaterialGroup.cs
- Binding.cs
- QilLiteral.cs
- SqlDataRecord.cs
- EmptyCollection.cs
- XhtmlBasicValidatorAdapter.cs
- QuaternionRotation3D.cs
- StyleSheet.cs
- EventPrivateKey.cs
- PageRanges.cs
- DataAdapter.cs
- DataGridViewRowHeaderCell.cs
- DataGridViewColumnStateChangedEventArgs.cs
- BamlLocalizableResource.cs
- PolyLineSegmentFigureLogic.cs
- Executor.cs
- DirectionalLight.cs
- SynchronizationContext.cs
- SecurityRuntime.cs
- SafeNativeMethods.cs
- XmlQueryTypeFactory.cs
- SpecialTypeDataContract.cs
- InterleavedZipPartStream.cs
- SqlPersonalizationProvider.cs
- DoubleLinkList.cs
- SortKey.cs
- _CommandStream.cs
- StateChangeEvent.cs
- PointCollection.cs
- SoundPlayer.cs
- MarshalByRefObject.cs
- ContractTypeNameCollection.cs
- PolicyImporterElementCollection.cs
- SourceFileBuildProvider.cs
- ClientType.cs
- NativeCppClassAttribute.cs
- MDIWindowDialog.cs
- UpDownBase.cs
- IssuedTokenParametersElement.cs