Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / fx / src / WinForms / Managed / System / WinForms / HtmlWindowCollection.cs / 1 / 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
- DecodeHelper.cs
- ServiceDescription.cs
- AttachedPropertyBrowsableForTypeAttribute.cs
- TreeViewHitTestInfo.cs
- XmlNavigatorStack.cs
- COM2ComponentEditor.cs
- LabelEditEvent.cs
- MenuScrollingVisibilityConverter.cs
- RecommendedAsConfigurableAttribute.cs
- TextBox.cs
- XPathNavigatorReader.cs
- XPathEmptyIterator.cs
- CellParaClient.cs
- Models.cs
- Decoder.cs
- FormattedTextSymbols.cs
- Hashtable.cs
- ActivityCollectionMarkupSerializer.cs
- SqlIdentifier.cs
- FilterQuery.cs
- ApplicationInterop.cs
- MatrixAnimationUsingKeyFrames.cs
- PersonalizationAdministration.cs
- EmbossBitmapEffect.cs
- HMACSHA384.cs
- ProcessModelInfo.cs
- ProfileInfo.cs
- CheckBoxRenderer.cs
- CompilerInfo.cs
- Rules.cs
- WorkflowLayouts.cs
- XmlLanguage.cs
- DataGridViewCellValueEventArgs.cs
- SafeEventLogWriteHandle.cs
- DispatcherTimer.cs
- MaskedTextBox.cs
- DetailsViewPagerRow.cs
- DigitShape.cs
- PropertyGeneratedEventArgs.cs
- InfoCardRSAPKCS1SignatureFormatter.cs
- SessionStateSection.cs
- DesignRelation.cs
- TextProperties.cs
- AnimatedTypeHelpers.cs
- ContainerParagraph.cs
- EtwProvider.cs
- Vector3DAnimationUsingKeyFrames.cs
- FileStream.cs
- TextDecorationCollection.cs
- DataGridDesigner.cs
- SchemaLookupTable.cs
- ToolStripHighContrastRenderer.cs
- ClipboardProcessor.cs
- MobileControl.cs
- NullableFloatAverageAggregationOperator.cs
- WebPartDisplayMode.cs
- unsafenativemethodstextservices.cs
- ProfileModule.cs
- TreeNodeConverter.cs
- TypeConverterAttribute.cs
- Font.cs
- MergeLocalizationDirectives.cs
- PropertyCollection.cs
- SharedDp.cs
- Brushes.cs
- FunctionDetailsReader.cs
- ButtonBase.cs
- SqlProvider.cs
- BinaryMethodMessage.cs
- DataGridViewRowConverter.cs
- TimeIntervalCollection.cs
- While.cs
- AttributeCollection.cs
- Brush.cs
- SqlDataSourceStatusEventArgs.cs
- sqlmetadatafactory.cs
- KeyProperty.cs
- NonBatchDirectoryCompiler.cs
- HijriCalendar.cs
- BitmapEffect.cs
- querybuilder.cs
- OracleRowUpdatedEventArgs.cs
- UserControl.cs
- BuildProvider.cs
- Enlistment.cs
- ApplicationHost.cs
- ConstrainedDataObject.cs
- SqlHelper.cs
- MatcherBuilder.cs
- SourceItem.cs
- List.cs
- CodeSnippetCompileUnit.cs
- UntypedNullExpression.cs
- BooleanFacetDescriptionElement.cs
- InputReport.cs
- Thread.cs
- StrongNameMembershipCondition.cs
- ClassValidator.cs
- ListViewCommandEventArgs.cs
- RegionInfo.cs