Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / 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 {
///
///
/// [To be supplied.]
///
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;
}
}
///
///
/// 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.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- InvalidOperationException.cs
- ClientSideProviderDescription.cs
- Lease.cs
- JsonWriterDelegator.cs
- StackOverflowException.cs
- HttpListenerPrefixCollection.cs
- PageBreakRecord.cs
- ScriptIgnoreAttribute.cs
- FontClient.cs
- ViewStateChangedEventArgs.cs
- HttpResponseInternalWrapper.cs
- HTMLTagNameToTypeMapper.cs
- TypeUtil.cs
- RsaSecurityToken.cs
- ISAPIApplicationHost.cs
- DigestTraceRecordHelper.cs
- DataSourceViewSchemaConverter.cs
- ConfigXmlAttribute.cs
- TextRange.cs
- AggregateNode.cs
- XPathCompileException.cs
- OleDbSchemaGuid.cs
- HwndMouseInputProvider.cs
- JsonGlobals.cs
- XmlQualifiedName.cs
- FreezableDefaultValueFactory.cs
- IISUnsafeMethods.cs
- Literal.cs
- WindowsToolbar.cs
- RuleSetCollection.cs
- MemoryMappedFile.cs
- ResXResourceReader.cs
- SimpleMailWebEventProvider.cs
- ExpressionStringBuilder.cs
- HwndSourceKeyboardInputSite.cs
- Accessible.cs
- PropertyValueChangedEvent.cs
- XmlAnyElementAttributes.cs
- DataServiceBehavior.cs
- ColorEditor.cs
- TargetFrameworkAttribute.cs
- PathSegmentCollection.cs
- UserMapPath.cs
- ToolStripItemGlyph.cs
- Storyboard.cs
- TraceSection.cs
- StateItem.cs
- CanonicalizationDriver.cs
- DataGridToolTip.cs
- ArcSegment.cs
- BadImageFormatException.cs
- figurelength.cs
- TemplateControlBuildProvider.cs
- DataGridPageChangedEventArgs.cs
- SoapFormatter.cs
- Nullable.cs
- StopRoutingHandler.cs
- ChannelSinkStacks.cs
- FusionWrap.cs
- DependencyProperty.cs
- HierarchicalDataTemplate.cs
- XmlSchemaAttributeGroup.cs
- Route.cs
- ReflectionPermission.cs
- OleDbError.cs
- MouseDevice.cs
- Timer.cs
- SelectingProviderEventArgs.cs
- CallTemplateAction.cs
- DiscardableAttribute.cs
- RayHitTestParameters.cs
- TableDetailsRow.cs
- ComMethodElement.cs
- SQLChars.cs
- InteropAutomationProvider.cs
- DrawingContext.cs
- InvalidProgramException.cs
- ExpandCollapsePatternIdentifiers.cs
- InitializationEventAttribute.cs
- EngineSite.cs
- PenContext.cs
- ErrorRuntimeConfig.cs
- DBSchemaRow.cs
- AutomationProperties.cs
- DetailsViewUpdatedEventArgs.cs
- CodeComment.cs
- CompiledQuery.cs
- HyperLinkStyle.cs
- FrugalMap.cs
- BuildProviderAppliesToAttribute.cs
- PopupEventArgs.cs
- PropertyChangeTracker.cs
- CodeNamespace.cs
- SharedConnectionWorkflowTransactionService.cs
- Token.cs
- SmiEventSink_Default.cs
- WebPartsPersonalizationAuthorization.cs
- TransformGroup.cs
- Matrix.cs
- RegionInfo.cs