Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Framework / System / Windows / WindowCollection.cs / 1 / WindowCollection.cs
//---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // Description: // WindowCollection can be used to interate over all the windows // that have been opened in the current application. // // History: // 08/10/04: [....] Moved out of Application.cs to its own separate file. // //--------------------------------------------------------------------------- using System.Collections; using System.Diagnostics; namespace System.Windows { #region WindowCollection class ////// WindowCollection can be used to interate over all the windows that have been /// opened in the current application. /// // public sealed class WindowCollection : ICollection { //----------------------------------------------------- // // Public Methods // //----------------------------------------------------- #region Public Methods ////// Default Constructor /// public WindowCollection() { _list = new ArrayList(1); } internal WindowCollection(int count) { Debug.Assert(count >= 0, "count must not be less than zero"); _list = new ArrayList(count); } #endregion Public Methods //------------------------------------------------------ // // Operator overload // //----------------------------------------------------- #region Operator overload ////// Overloaded [] operator to access the WindowCollection list /// public Window this[int index] { get { return _list[index] as Window; } } #endregion Operator overload //------------------------------------------------------ // // IEnumerable implementation // //------------------------------------------------------ #region IEnumerable implementation ////// GetEnumerator /// ///public IEnumerator GetEnumerator() { return _list.GetEnumerator(); } #endregion IEnumerable implementation //------------------------------------------------------- // // ICollection implementation (derives from IEnumerable) // //-------------------------------------------------------- #region ICollection implementation /// /// CopyTo /// /// /// void ICollection.CopyTo(Array array, int index) { _list.CopyTo(array, index); } ////// CopyTo /// /// /// public void CopyTo(Window[] array, int index) { _list.CopyTo(array, index); } ////// Count property /// public int Count { get { return _list.Count; } } ////// IsSynchronized /// public bool IsSynchronized { get { return _list.IsSynchronized; } } ////// SyncRoot /// public Object SyncRoot { get { return _list.SyncRoot; } } #endregion ICollection implementation //----------------------------------------------------- // // Internal Methods // //----------------------------------------------------- #region Internal Methods internal WindowCollection Clone() { WindowCollection clone; lock (_list.SyncRoot) { clone = new WindowCollection(_list.Count); for (int i = 0; i < _list.Count; i++) { clone._list.Add(_list[i]); } } return clone; } internal void Remove(Window win) { lock (_list.SyncRoot) { _list.Remove(win); } } internal void RemoveAt(int index) { lock (_list.SyncRoot) { _list.Remove(index); } } internal int Add (Window win) { lock (_list.SyncRoot) { return _list.Add(win); } } internal bool HasItem(Window win) { lock (_list.SyncRoot) { for (int i = 0; i < _list.Count; i++) { if (_list[i] == win) { return true; } } } return false; } #endregion Internal Methods //----------------------------------------------------- // // Private Fields // //------------------------------------------------------ #region Private Fields private ArrayList _list; #endregion Private Fields } #endregion WindowCollection class } // 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
- CustomValidator.cs
- WebServiceErrorEvent.cs
- BoolExpr.cs
- UpdateCommandGenerator.cs
- TransformerTypeCollection.cs
- TextFragmentEngine.cs
- sqlpipe.cs
- ArrayExtension.cs
- GenericTypeParameterBuilder.cs
- BinaryFormatterWriter.cs
- XmlWrappingReader.cs
- DataKey.cs
- GridViewColumnCollectionChangedEventArgs.cs
- DebugHandleTracker.cs
- CompilerGeneratedAttribute.cs
- HtmlTextArea.cs
- _ReceiveMessageOverlappedAsyncResult.cs
- InplaceBitmapMetadataWriter.cs
- MessageHeader.cs
- Msmq.cs
- TableItemPattern.cs
- InterleavedZipPartStream.cs
- RolePrincipal.cs
- FontUnitConverter.cs
- SiteMapPath.cs
- MasterPageParser.cs
- XmlNodeChangedEventManager.cs
- DesignerAutoFormatStyle.cs
- HashStream.cs
- Highlights.cs
- SmiGettersStream.cs
- IgnoreSectionHandler.cs
- DefaultPrintController.cs
- SqlRetyper.cs
- DataGridViewTextBoxCell.cs
- UnaryQueryOperator.cs
- AnimatedTypeHelpers.cs
- ProfileGroupSettings.cs
- IPEndPointCollection.cs
- StorageAssociationTypeMapping.cs
- Range.cs
- ConnectionsZone.cs
- DesignerLoader.cs
- WebRequestModuleElement.cs
- ImageBrush.cs
- ScriptResourceMapping.cs
- InProcStateClientManager.cs
- DataSvcMapFile.cs
- SQLBinary.cs
- CodeNamespaceImportCollection.cs
- RenderData.cs
- ListViewUpdateEventArgs.cs
- IBuiltInEvidence.cs
- XmlHierarchyData.cs
- __FastResourceComparer.cs
- MediaContext.cs
- CompositeFontInfo.cs
- DelegatingTypeDescriptionProvider.cs
- ConfigurationLockCollection.cs
- HttpResponseInternalWrapper.cs
- XMLDiffLoader.cs
- DataSourceHelper.cs
- SchemaTypeEmitter.cs
- MtomMessageEncodingBindingElement.cs
- CapabilitiesRule.cs
- HwndKeyboardInputProvider.cs
- WindowsListView.cs
- TraceHandler.cs
- ModuleBuilderData.cs
- ProcessStartInfo.cs
- DataGridViewCheckBoxCell.cs
- LinkUtilities.cs
- FtpCachePolicyElement.cs
- BrowserCapabilitiesFactoryBase.cs
- ThicknessAnimation.cs
- Byte.cs
- MemberExpressionHelper.cs
- ListViewEditEventArgs.cs
- SystemSounds.cs
- ReliableRequestSessionChannel.cs
- AssociationEndMember.cs
- DbProviderConfigurationHandler.cs
- PreservationFileReader.cs
- CatalogZone.cs
- FontUnit.cs
- BuildProvidersCompiler.cs
- ActiveXSerializer.cs
- WebColorConverter.cs
- PropertyMetadata.cs
- DocumentGridPage.cs
- BuildProviderCollection.cs
- RoleService.cs
- PageCatalogPartDesigner.cs
- WebPartDisplayModeCancelEventArgs.cs
- OverflowException.cs
- StoreItemCollection.cs
- MediaContext.cs
- GcHandle.cs
- ThicknessKeyFrameCollection.cs
- MLangCodePageEncoding.cs