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
- _NegotiateClient.cs
- ServiceModelSecurityTokenTypes.cs
- DialogResultConverter.cs
- CompletedAsyncResult.cs
- MailMessage.cs
- KnownIds.cs
- MimeWriter.cs
- TemplateBindingExpression.cs
- ObsoleteAttribute.cs
- FlowDocumentScrollViewerAutomationPeer.cs
- PeerValidationBehavior.cs
- CheckBox.cs
- DataRecordObjectView.cs
- TextProperties.cs
- UnknownBitmapDecoder.cs
- CalendarButtonAutomationPeer.cs
- MemberDomainMap.cs
- XmlDataSource.cs
- DrawListViewColumnHeaderEventArgs.cs
- SchemaNamespaceManager.cs
- TripleDESCryptoServiceProvider.cs
- PerformanceCounter.cs
- CacheDependency.cs
- TagNameToTypeMapper.cs
- SessionSymmetricTransportSecurityProtocolFactory.cs
- RegistryPermission.cs
- SoapEnvelopeProcessingElement.cs
- WebConfigManager.cs
- TypedDataSetSchemaImporterExtensionFx35.cs
- TransportChannelListener.cs
- SQLDecimal.cs
- RijndaelManaged.cs
- ErrorFormatter.cs
- TiffBitmapDecoder.cs
- XmlReflectionImporter.cs
- ThicknessAnimationBase.cs
- ToolboxDataAttribute.cs
- TargetConverter.cs
- RSACryptoServiceProvider.cs
- ViewCellSlot.cs
- ResourcePermissionBase.cs
- QueryConverter.cs
- FixedDSBuilder.cs
- MethodBuilder.cs
- ServicePoint.cs
- SystemSounds.cs
- ConnectionStringSettingsCollection.cs
- ChtmlPageAdapter.cs
- LinkConverter.cs
- MetaType.cs
- DbConnectionHelper.cs
- ExpandableObjectConverter.cs
- TaskFormBase.cs
- NonSerializedAttribute.cs
- InternalPermissions.cs
- PassportPrincipal.cs
- DataSetMappper.cs
- hwndwrapper.cs
- IisTraceWebEventProvider.cs
- RawStylusActions.cs
- EnterpriseServicesHelper.cs
- SoapAttributeOverrides.cs
- BordersPage.cs
- SystemWebSectionGroup.cs
- ActivityWithResult.cs
- DesignerEventService.cs
- ActivityLocationReferenceEnvironment.cs
- CalendarDateChangedEventArgs.cs
- LeaseManager.cs
- MultipleViewProviderWrapper.cs
- FindCriteriaCD1.cs
- PointHitTestParameters.cs
- DictionaryEditChange.cs
- StringValidator.cs
- SimpleHandlerFactory.cs
- ColumnWidthChangedEvent.cs
- TextTreeTextElementNode.cs
- SapiGrammar.cs
- ImageAnimator.cs
- DragDropManager.cs
- RewritingPass.cs
- ServiceHttpHandlerFactory.cs
- Matrix.cs
- CodeTypeReferenceCollection.cs
- ObjectDataSourceDisposingEventArgs.cs
- IgnoreDataMemberAttribute.cs
- WindowsMenu.cs
- BamlMapTable.cs
- SqlRowUpdatingEvent.cs
- DodSequenceMerge.cs
- WriterOutput.cs
- EventsTab.cs
- FontResourceCache.cs
- DesignerActionVerbItem.cs
- StylusTip.cs
- ParserOptions.cs
- XmlArrayItemAttribute.cs
- RowVisual.cs
- xmlglyphRunInfo.cs
- ResourceType.cs