Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / WinForms / Managed / System / WinForms / HtmlWindowCollection.cs / 1305376 / HtmlWindowCollection.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- using System; using System.ComponentModel; using System.Diagnostics; using System.IO; using System.Drawing; using System.Drawing.Printing; using System.Windows.Forms; using System.Security.Permissions; using System.Security; using System.Runtime.InteropServices; using System.Net; using System.Collections; namespace System.Windows.Forms { ////// /// public class HtmlWindowCollection : ICollection { private UnsafeNativeMethods.IHTMLFramesCollection2 htmlFramesCollection2; private HtmlShimManager shimManager; internal HtmlWindowCollection(HtmlShimManager shimManager, UnsafeNativeMethods.IHTMLFramesCollection2 collection) { this.htmlFramesCollection2 = collection; this.shimManager = shimManager; Debug.Assert(this.NativeHTMLFramesCollection2 != null, "The window collection object should implement IHTMLFramesCollection2"); } private UnsafeNativeMethods.IHTMLFramesCollection2 NativeHTMLFramesCollection2 { get { return this.htmlFramesCollection2; } } ///[To be supplied.] ////// /// public HtmlWindow this[int index] { get { if (index < 0 || index >= this.Count) { throw new ArgumentOutOfRangeException("index", SR.GetString(SR.InvalidBoundArgument, "index", index, 0, this.Count - 1)); } object oIndex = (object)index; UnsafeNativeMethods.IHTMLWindow2 htmlWindow2 = this.NativeHTMLFramesCollection2.Item(ref oIndex) as UnsafeNativeMethods.IHTMLWindow2; return (htmlWindow2 != null) ? new HtmlWindow(shimManager, htmlWindow2) : null; } } ///[To be supplied.] ////// /// public HtmlWindow this[string windowId] { get { object oWindowId = (object)windowId; UnsafeNativeMethods.IHTMLWindow2 htmlWindow2 = null; try { htmlWindow2 = this.htmlFramesCollection2.Item(ref oWindowId) as UnsafeNativeMethods.IHTMLWindow2; } catch (COMException) { throw new ArgumentException(SR.GetString(SR.InvalidArgument, "windowId", windowId)); } return (htmlWindow2 != null) ? new HtmlWindow(shimManager, htmlWindow2) : null; } } ///[To be supplied.] ////// /// Returns the total number of elements in the collection. /// public int Count { get { return this.NativeHTMLFramesCollection2.GetLength(); } } ////// bool ICollection.IsSynchronized { get { return false; } } /// /// object ICollection.SyncRoot { get { return this; } } /// /// void ICollection.CopyTo(Array dest, int index) { int count = this.Count; for (int i = 0; i < count; i++) { dest.SetValue(this[i], index++); } } /// /// public IEnumerator GetEnumerator() { HtmlWindow[] htmlWindows = new HtmlWindow[this.Count]; ((ICollection)this).CopyTo(htmlWindows, 0); return htmlWindows.GetEnumerator(); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ // // Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- using System; using System.ComponentModel; using System.Diagnostics; using System.IO; using System.Drawing; using System.Drawing.Printing; using System.Windows.Forms; using System.Security.Permissions; using System.Security; using System.Runtime.InteropServices; using System.Net; using System.Collections; namespace System.Windows.Forms { ////// /// public class HtmlWindowCollection : ICollection { private UnsafeNativeMethods.IHTMLFramesCollection2 htmlFramesCollection2; private HtmlShimManager shimManager; internal HtmlWindowCollection(HtmlShimManager shimManager, UnsafeNativeMethods.IHTMLFramesCollection2 collection) { this.htmlFramesCollection2 = collection; this.shimManager = shimManager; Debug.Assert(this.NativeHTMLFramesCollection2 != null, "The window collection object should implement IHTMLFramesCollection2"); } private UnsafeNativeMethods.IHTMLFramesCollection2 NativeHTMLFramesCollection2 { get { return this.htmlFramesCollection2; } } ///[To be supplied.] ////// /// public HtmlWindow this[int index] { get { if (index < 0 || index >= this.Count) { throw new ArgumentOutOfRangeException("index", SR.GetString(SR.InvalidBoundArgument, "index", index, 0, this.Count - 1)); } object oIndex = (object)index; UnsafeNativeMethods.IHTMLWindow2 htmlWindow2 = this.NativeHTMLFramesCollection2.Item(ref oIndex) as UnsafeNativeMethods.IHTMLWindow2; return (htmlWindow2 != null) ? new HtmlWindow(shimManager, htmlWindow2) : null; } } ///[To be supplied.] ////// /// public HtmlWindow this[string windowId] { get { object oWindowId = (object)windowId; UnsafeNativeMethods.IHTMLWindow2 htmlWindow2 = null; try { htmlWindow2 = this.htmlFramesCollection2.Item(ref oWindowId) as UnsafeNativeMethods.IHTMLWindow2; } catch (COMException) { throw new ArgumentException(SR.GetString(SR.InvalidArgument, "windowId", windowId)); } return (htmlWindow2 != null) ? new HtmlWindow(shimManager, htmlWindow2) : null; } } ///[To be supplied.] ////// /// Returns the total number of elements in the collection. /// public int Count { get { return this.NativeHTMLFramesCollection2.GetLength(); } } ////// bool ICollection.IsSynchronized { get { return false; } } /// /// object ICollection.SyncRoot { get { return this; } } /// /// void ICollection.CopyTo(Array dest, int index) { int count = this.Count; for (int i = 0; i < count; i++) { dest.SetValue(this[i], index++); } } /// /// public IEnumerator GetEnumerator() { HtmlWindow[] htmlWindows = new HtmlWindow[this.Count]; ((ICollection)this).CopyTo(htmlWindows, 0); return htmlWindows.GetEnumerator(); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DirectionalLight.cs
- WebPartEditorCancelVerb.cs
- WhitespaceSignificantCollectionAttribute.cs
- MediaTimeline.cs
- HtmlProps.cs
- UnknownBitmapEncoder.cs
- WebReferencesBuildProvider.cs
- FormViewAutoFormat.cs
- StrokeFIndices.cs
- WindowsListViewItem.cs
- DataSysAttribute.cs
- TrustLevel.cs
- DecimalStorage.cs
- XNodeNavigator.cs
- PositiveTimeSpanValidatorAttribute.cs
- TypeReference.cs
- InvariantComparer.cs
- TransactionsSectionGroup.cs
- OSFeature.cs
- WebConfigurationHost.cs
- CharAnimationBase.cs
- _SpnDictionary.cs
- ExternalException.cs
- StyleSelector.cs
- OwnerDrawPropertyBag.cs
- AssemblyFilter.cs
- UserControl.cs
- DebugInfoExpression.cs
- Container.cs
- CmsUtils.cs
- SelectionWordBreaker.cs
- WinCategoryAttribute.cs
- ModelPropertyDescriptor.cs
- MasterPageCodeDomTreeGenerator.cs
- IWorkflowDebuggerService.cs
- BooleanStorage.cs
- DataGridColumn.cs
- BezierSegment.cs
- SortedList.cs
- _ListenerAsyncResult.cs
- ClientProtocol.cs
- DrawingBrush.cs
- Rijndael.cs
- ColumnPropertiesGroup.cs
- PointConverter.cs
- PageAsyncTaskManager.cs
- CdpEqualityComparer.cs
- HttpCookiesSection.cs
- MailWebEventProvider.cs
- cache.cs
- ExpressionNode.cs
- DefaultClaimSet.cs
- DataSourceXmlClassAttribute.cs
- BaseProcessor.cs
- EnvelopedPkcs7.cs
- SerialReceived.cs
- LayoutEvent.cs
- GlyphInfoList.cs
- ShaderEffect.cs
- XslVisitor.cs
- QueueProcessor.cs
- OuterGlowBitmapEffect.cs
- DockPattern.cs
- LayoutManager.cs
- StrokeNodeEnumerator.cs
- DataGridViewRowDividerDoubleClickEventArgs.cs
- MethodMessage.cs
- ParagraphResult.cs
- CompilerScope.cs
- SliderAutomationPeer.cs
- XmlSchemaInclude.cs
- VSWCFServiceContractGenerator.cs
- ScrollContentPresenter.cs
- BuildProvider.cs
- LoginUtil.cs
- PixelFormats.cs
- Composition.cs
- ImageMetadata.cs
- SQLStringStorage.cs
- TextEditorMouse.cs
- EventSetter.cs
- _RequestCacheProtocol.cs
- XmlDataImplementation.cs
- uribuilder.cs
- Int64AnimationBase.cs
- HttpCookieCollection.cs
- KeyboardNavigation.cs
- VirtualDirectoryMappingCollection.cs
- StorageRoot.cs
- WebBrowserDocumentCompletedEventHandler.cs
- Menu.cs
- DataException.cs
- WebPartPersonalization.cs
- DATA_BLOB.cs
- BrushMappingModeValidation.cs
- DbParameterCollectionHelper.cs
- _AcceptOverlappedAsyncResult.cs
- InputScope.cs
- DataStorage.cs
- MatrixTransform3D.cs