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
- RemoteArgument.cs
- WindowsFormsLinkLabel.cs
- LoadedOrUnloadedOperation.cs
- DefaultValueMapping.cs
- ValueUnavailableException.cs
- ClockGroup.cs
- DrawingVisual.cs
- ValidationContext.cs
- DesigntimeLicenseContextSerializer.cs
- RuntimeHandles.cs
- MenuCommandsChangedEventArgs.cs
- CharacterHit.cs
- ApplicationDirectoryMembershipCondition.cs
- ReferentialConstraint.cs
- WebPartConnectionsDisconnectVerb.cs
- AdvancedBindingEditor.cs
- glyphs.cs
- ArgumentOutOfRangeException.cs
- DataGridrowEditEndingEventArgs.cs
- Utils.cs
- TextEditorTables.cs
- SymmetricKey.cs
- InputGestureCollection.cs
- Function.cs
- ConfigurationElementProperty.cs
- TextContainerChangeEventArgs.cs
- XmlAnyElementAttributes.cs
- DataObjectCopyingEventArgs.cs
- TemplateBindingExtensionConverter.cs
- AlternateView.cs
- PerfService.cs
- DataGridViewTopLeftHeaderCell.cs
- ProxyManager.cs
- XmlElementAttribute.cs
- EventManager.cs
- CacheHelper.cs
- SmtpMail.cs
- AutomationElement.cs
- DebugInfoGenerator.cs
- ItemsChangedEventArgs.cs
- FilterQueryOptionExpression.cs
- WebMessageEncodingElement.cs
- VerificationException.cs
- ClientTargetSection.cs
- RtType.cs
- ProviderSettings.cs
- DataGrid.cs
- DoubleAverageAggregationOperator.cs
- PropertyItem.cs
- TableLayoutCellPaintEventArgs.cs
- XPathDocumentNavigator.cs
- ListCollectionView.cs
- TextEditorSpelling.cs
- SoapEnvelopeProcessingElement.cs
- EdmItemCollection.cs
- RoleProviderPrincipal.cs
- SHA256Managed.cs
- SmtpNetworkElement.cs
- EncoderExceptionFallback.cs
- DataGridViewEditingControlShowingEventArgs.cs
- TextEditorParagraphs.cs
- DomNameTable.cs
- PreProcessInputEventArgs.cs
- XmlCodeExporter.cs
- HttpHandler.cs
- BitmapEffectOutputConnector.cs
- DataReceivedEventArgs.cs
- BaseParser.cs
- LinkConverter.cs
- ScriptResourceAttribute.cs
- SelectionProcessor.cs
- DataGridItemCollection.cs
- ApplicationSecurityManager.cs
- WebPartManager.cs
- SmtpFailedRecipientException.cs
- DataSourceControlBuilder.cs
- SymbolTable.cs
- ListViewItem.cs
- ListItemParagraph.cs
- WebPartEditorApplyVerb.cs
- AdornerPresentationContext.cs
- _NetRes.cs
- RootProfilePropertySettingsCollection.cs
- ExtractorMetadata.cs
- ApplicationDirectoryMembershipCondition.cs
- AssemblyCollection.cs
- WriteStateInfoBase.cs
- AsyncPostBackTrigger.cs
- StatusBar.cs
- DrawingDrawingContext.cs
- ListViewItem.cs
- WinFormsSpinner.cs
- HtmlControlPersistable.cs
- DbProviderFactories.cs
- Emitter.cs
- ComponentManagerBroker.cs
- SoundPlayerAction.cs
- SmtpReplyReaderFactory.cs
- ListViewItemSelectionChangedEvent.cs
- PropertyValue.cs