Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / 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 - [....] ([....]) - 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
- NoneExcludedImageIndexConverter.cs
- DialogResultConverter.cs
- IMembershipProvider.cs
- ContentIterators.cs
- SqlWriter.cs
- ElapsedEventArgs.cs
- PositiveTimeSpanValidator.cs
- CellPartitioner.cs
- XmlSignatureProperties.cs
- ObjectListItem.cs
- MsmqChannelListenerBase.cs
- AssemblyName.cs
- ButtonFieldBase.cs
- DataGridRow.cs
- SqlCachedBuffer.cs
- HotSpot.cs
- selecteditemcollection.cs
- FtpCachePolicyElement.cs
- TemplateLookupAction.cs
- GeometryCombineModeValidation.cs
- Setter.cs
- HtmlControl.cs
- TextRangeBase.cs
- ServerValidateEventArgs.cs
- ParserHooks.cs
- TypeContext.cs
- WsdlInspector.cs
- ScriptResourceDefinition.cs
- TabControlCancelEvent.cs
- CodeArgumentReferenceExpression.cs
- ComIntegrationManifestGenerator.cs
- PathStreamGeometryContext.cs
- HtmlAnchor.cs
- CardSpaceSelector.cs
- AppSettingsExpressionBuilder.cs
- DataGridViewSelectedCellCollection.cs
- DependencySource.cs
- StdValidatorsAndConverters.cs
- WorkflowMarkupSerializer.cs
- HandlerBase.cs
- TabControlCancelEvent.cs
- TraceHandlerErrorFormatter.cs
- OracleDataAdapter.cs
- EventSinkActivityDesigner.cs
- DataColumnChangeEvent.cs
- FilterableAttribute.cs
- _ProxyChain.cs
- SqlProcedureAttribute.cs
- EventQueueState.cs
- CompositeControl.cs
- NotifyParentPropertyAttribute.cs
- FormattedText.cs
- ExceptionValidationRule.cs
- FunctionImportElement.cs
- IgnoreFileBuildProvider.cs
- OperatingSystem.cs
- Header.cs
- KnownTypeAttribute.cs
- ComboBoxRenderer.cs
- GotoExpression.cs
- TryCatch.cs
- GregorianCalendar.cs
- ProxyGenerator.cs
- DescriptionAttribute.cs
- BoolExpressionVisitors.cs
- RawStylusInputCustomData.cs
- TypeProvider.cs
- ProtocolViolationException.cs
- HMACSHA384.cs
- OracleConnection.cs
- SectionInformation.cs
- _UriSyntax.cs
- ReferenceAssemblyAttribute.cs
- Int64KeyFrameCollection.cs
- ValidationRule.cs
- XomlCompiler.cs
- BitmapEffectvisualstate.cs
- EntityProviderFactory.cs
- RuleSetDialog.cs
- ConfigurationElement.cs
- PartDesigner.cs
- CompiledRegexRunnerFactory.cs
- recordstatefactory.cs
- TypeBuilderInstantiation.cs
- DTCTransactionManager.cs
- WorkItem.cs
- DrawingCollection.cs
- WebPartCancelEventArgs.cs
- Line.cs
- ItemChangedEventArgs.cs
- TraceLog.cs
- DataBoundControlHelper.cs
- DelegateArgumentValue.cs
- SmtpLoginAuthenticationModule.cs
- IsolatedStorageException.cs
- TableCell.cs
- Profiler.cs
- ReferencedType.cs
- SectionUpdates.cs
- smtppermission.cs