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
- PerformanceCounter.cs
- SmiTypedGetterSetter.cs
- TraceRecord.cs
- ActivityDesignerHelper.cs
- ServiceOperation.cs
- SessionStateUtil.cs
- JsonReader.cs
- SqlAggregateChecker.cs
- HttpConfigurationContext.cs
- XmlResolver.cs
- _NetRes.cs
- DynamicValidatorEventArgs.cs
- BuildProvider.cs
- SafeCertificateStore.cs
- DocumentsTrace.cs
- ChannelManagerService.cs
- smtpconnection.cs
- GenericAuthenticationEventArgs.cs
- WebPartsPersonalization.cs
- GlobalEventManager.cs
- EventLogPermissionAttribute.cs
- DataSourceHelper.cs
- ValidatorCompatibilityHelper.cs
- CodeMemberField.cs
- AnonymousIdentificationSection.cs
- ExtenderProviderService.cs
- DetailsViewActionList.cs
- MobileControl.cs
- ComponentRenameEvent.cs
- SmtpDigestAuthenticationModule.cs
- ping.cs
- XmlDataDocument.cs
- WebPartZoneBase.cs
- SmiRequestExecutor.cs
- WindowClosedEventArgs.cs
- ImportOptions.cs
- Symbol.cs
- FontUnitConverter.cs
- FunctionDescription.cs
- Point3DConverter.cs
- ComponentCollection.cs
- SchemaDeclBase.cs
- ConnectionConsumerAttribute.cs
- DataGridViewCheckBoxColumn.cs
- AstNode.cs
- FullTrustAssembliesSection.cs
- TextFormatterContext.cs
- RepeatBehavior.cs
- DesignerForm.cs
- ServicePointManagerElement.cs
- ColorTransformHelper.cs
- ActivityExecutor.cs
- log.cs
- FreezableDefaultValueFactory.cs
- ToolStripPanelRow.cs
- TextParagraphProperties.cs
- FixedSOMElement.cs
- ModifiableIteratorCollection.cs
- TypeConverter.cs
- ClientBuildManagerCallback.cs
- MenuItemCollectionEditorDialog.cs
- GlobalEventManager.cs
- PageAsyncTaskManager.cs
- LingerOption.cs
- AssemblyNameProxy.cs
- HyperLinkStyle.cs
- ResourceDescriptionAttribute.cs
- BeginEvent.cs
- UITypeEditor.cs
- SqlParameterCollection.cs
- SiteIdentityPermission.cs
- EntityStoreSchemaFilterEntry.cs
- SerTrace.cs
- TriggerCollection.cs
- SafeNativeMethods.cs
- Rotation3D.cs
- SelectionPatternIdentifiers.cs
- GC.cs
- TableRowGroup.cs
- SizeChangedInfo.cs
- StandardMenuStripVerb.cs
- AsymmetricKeyExchangeFormatter.cs
- ViewGenerator.cs
- XmlDownloadManager.cs
- FixedDocumentSequencePaginator.cs
- RangeValuePattern.cs
- DesignerGeometryHelper.cs
- SiteMapDataSourceView.cs
- XmlCountingReader.cs
- DataServiceQueryProvider.cs
- Block.cs
- PanelDesigner.cs
- WebPartConnectionsEventArgs.cs
- ToolboxService.cs
- SoapParser.cs
- VolatileResourceManager.cs
- ByteStreamGeometryContext.cs
- MetabaseReader.cs
- CodeActivity.cs
- MessageQueueConverter.cs