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
- BaseTemplateCodeDomTreeGenerator.cs
- UnsafeNativeMethods.cs
- TreeNodeClickEventArgs.cs
- ProcessModelInfo.cs
- RestClientProxyHandler.cs
- AdapterSwitches.cs
- DiscoveryClientDocuments.cs
- ProcessHost.cs
- DispatcherSynchronizationContext.cs
- BlurEffect.cs
- HtmlHistory.cs
- DbQueryCommandTree.cs
- TableLayout.cs
- Stacktrace.cs
- DataTableClearEvent.cs
- GroupDescription.cs
- GlyphRunDrawing.cs
- formatter.cs
- ChameleonKey.cs
- ObjectComplexPropertyMapping.cs
- DocumentXPathNavigator.cs
- Win32Native.cs
- RecommendedAsConfigurableAttribute.cs
- RadioButton.cs
- CallTemplateAction.cs
- VectorConverter.cs
- ConfigurationCollectionAttribute.cs
- HttpWebRequest.cs
- securitycriticaldataClass.cs
- SerializationHelper.cs
- Component.cs
- GridView.cs
- CustomAssemblyResolver.cs
- BaseTemplateBuildProvider.cs
- DataGridItemCollection.cs
- StorageEntitySetMapping.cs
- CodeCatchClause.cs
- ScrollData.cs
- UnhandledExceptionEventArgs.cs
- ItemsChangedEventArgs.cs
- StrongNameKeyPair.cs
- HelpOperationInvoker.cs
- MobileSysDescriptionAttribute.cs
- TimeSpanStorage.cs
- SafeArrayRankMismatchException.cs
- DbConnectionPool.cs
- TextEffect.cs
- TimeStampChecker.cs
- ApplicationSettingsBase.cs
- RubberbandSelector.cs
- CompareInfo.cs
- unsafenativemethodstextservices.cs
- NetStream.cs
- ToolBar.cs
- TdsRecordBufferSetter.cs
- TerminateDesigner.cs
- DataGridViewRowCollection.cs
- DefaultSettingsSection.cs
- TextBox.cs
- WebPartConnectionsDisconnectVerb.cs
- MenuItemStyle.cs
- OleDbFactory.cs
- EntitySetRetriever.cs
- PopupControlService.cs
- OleDbFactory.cs
- DocumentXPathNavigator.cs
- TextSpanModifier.cs
- ToolStripGripRenderEventArgs.cs
- ObjectStateEntryDbUpdatableDataRecord.cs
- DataControlFieldHeaderCell.cs
- SqlAliasesReferenced.cs
- UserControl.cs
- HandleCollector.cs
- MemberHolder.cs
- BodyGlyph.cs
- SafeNativeMethods.cs
- HelpKeywordAttribute.cs
- KeyboardNavigation.cs
- AnnotationAdorner.cs
- MsmqIntegrationValidationBehavior.cs
- TraceFilter.cs
- SimpleRecyclingCache.cs
- MenuEventArgs.cs
- InfoCardMasterKey.cs
- PriorityQueue.cs
- ServiceModelEnhancedConfigurationElementCollection.cs
- SortExpressionBuilder.cs
- TextEffectCollection.cs
- SetStateEventArgs.cs
- WindowsIdentity.cs
- AxisAngleRotation3D.cs
- ListViewEditEventArgs.cs
- DuplicateWaitObjectException.cs
- AxisAngleRotation3D.cs
- VarRemapper.cs
- QueryExecutionOption.cs
- Font.cs
- ExpressionBuilder.cs
- QuestionEventArgs.cs
- CalendarAutoFormat.cs