Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Web / UI / WebParts / WebPartTracker.cs / 1305376 / WebPartTracker.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.WebControls.WebParts { using System; using System.Collections; using System.ComponentModel; using System.Diagnostics; using System.Drawing.Design; using System.Web; using System.Web.UI; public sealed class WebPartTracker : IDisposable { private bool _disposed; private WebPart _webPart; private ProviderConnectionPoint _providerConnectionPoint; public WebPartTracker(WebPart webPart, ProviderConnectionPoint providerConnectionPoint) { if (webPart == null) { throw new ArgumentNullException("webPart"); } if (providerConnectionPoint == null) { throw new ArgumentNullException("providerConnectionPoint"); } if (providerConnectionPoint.ControlType != webPart.GetType()) { throw new ArgumentException(SR.GetString(SR.WebPartManager_InvalidConnectionPoint), "providerConnectionPoint"); } _webPart = webPart; _providerConnectionPoint = providerConnectionPoint; if (++Count > 1) { webPart.SetConnectErrorMessage(SR.GetString( SR.WebPartTracker_CircularConnection, _providerConnectionPoint.DisplayName)); } } public bool IsCircularConnection { get { return (Count > 1); } } private int Count { get { int count; _webPart.TrackerCounter.TryGetValue(_providerConnectionPoint, out count); return count; } set { _webPart.TrackerCounter[_providerConnectionPoint] = value; } } void IDisposable.Dispose() { if (!_disposed) { Debug.Assert(Count >= 1); Count--; _disposed = true; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.WebControls.WebParts { using System; using System.Collections; using System.ComponentModel; using System.Diagnostics; using System.Drawing.Design; using System.Web; using System.Web.UI; public sealed class WebPartTracker : IDisposable { private bool _disposed; private WebPart _webPart; private ProviderConnectionPoint _providerConnectionPoint; public WebPartTracker(WebPart webPart, ProviderConnectionPoint providerConnectionPoint) { if (webPart == null) { throw new ArgumentNullException("webPart"); } if (providerConnectionPoint == null) { throw new ArgumentNullException("providerConnectionPoint"); } if (providerConnectionPoint.ControlType != webPart.GetType()) { throw new ArgumentException(SR.GetString(SR.WebPartManager_InvalidConnectionPoint), "providerConnectionPoint"); } _webPart = webPart; _providerConnectionPoint = providerConnectionPoint; if (++Count > 1) { webPart.SetConnectErrorMessage(SR.GetString( SR.WebPartTracker_CircularConnection, _providerConnectionPoint.DisplayName)); } } public bool IsCircularConnection { get { return (Count > 1); } } private int Count { get { int count; _webPart.TrackerCounter.TryGetValue(_providerConnectionPoint, out count); return count; } set { _webPart.TrackerCounter[_providerConnectionPoint] = value; } } void IDisposable.Dispose() { if (!_disposed) { Debug.Assert(Count >= 1); Count--; _disposed = true; } } } } // 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
- EncodingInfo.cs
- ScalarType.cs
- XamlParser.cs
- DataGridViewCell.cs
- StyleSelector.cs
- WebPartCancelEventArgs.cs
- StreamingContext.cs
- IconBitmapDecoder.cs
- FontUnitConverter.cs
- XamlPoint3DCollectionSerializer.cs
- CompilerCollection.cs
- Message.cs
- SuppressIldasmAttribute.cs
- SimpleTextLine.cs
- COM2FontConverter.cs
- Label.cs
- DES.cs
- SqlRowUpdatingEvent.cs
- ReachSerializationCacheItems.cs
- PolicyLevel.cs
- BindingCompleteEventArgs.cs
- RepeatInfo.cs
- ProfilePropertyMetadata.cs
- SystemNetworkInterface.cs
- FrameworkTextComposition.cs
- __Error.cs
- IntSecurity.cs
- InputBinding.cs
- TableHeaderCell.cs
- BaseTemplateCodeDomTreeGenerator.cs
- XmlSubtreeReader.cs
- WebScriptServiceHostFactory.cs
- Deserializer.cs
- GACIdentityPermission.cs
- MdiWindowListStrip.cs
- HandlerFactoryCache.cs
- TemplateBaseAction.cs
- PointAnimationBase.cs
- XPathNodeIterator.cs
- ObsoleteAttribute.cs
- CorePropertiesFilter.cs
- TraceEventCache.cs
- xml.cs
- ValueTable.cs
- NGCPageContentCollectionSerializerAsync.cs
- SqlStatistics.cs
- StringAnimationBase.cs
- RegionIterator.cs
- GPPOINTF.cs
- Socket.cs
- FramingEncoders.cs
- DataGridColumnCollectionEditor.cs
- AddingNewEventArgs.cs
- DataStorage.cs
- Panel.cs
- SuppressIldasmAttribute.cs
- SQLStringStorage.cs
- MemberDomainMap.cs
- ScrollEventArgs.cs
- PixelShader.cs
- TrackingDataItemValue.cs
- ItemMap.cs
- SelectionBorderGlyph.cs
- TimeSpanSecondsConverter.cs
- altserialization.cs
- StateMachine.cs
- ConfigurationValidatorBase.cs
- HttpResponse.cs
- FixedPageProcessor.cs
- ActivityStatusChangeEventArgs.cs
- BrowserCapabilitiesFactory.cs
- GenericWebPart.cs
- Button.cs
- FieldCollectionEditor.cs
- IdentityHolder.cs
- ChannelOptions.cs
- StrokeIntersection.cs
- DefaultTextStore.cs
- GZipDecoder.cs
- UInt16Storage.cs
- ListBase.cs
- Bidi.cs
- ShapingEngine.cs
- WebDisplayNameAttribute.cs
- KeyEvent.cs
- SafePEFileHandle.cs
- ComponentResourceManager.cs
- WorkflowRuntime.cs
- XPathMultyIterator.cs
- ISessionStateStore.cs
- XmlBuffer.cs
- Preprocessor.cs
- CopyCodeAction.cs
- TemplateEditingFrame.cs
- Parameter.cs
- BaseTemplateBuildProvider.cs
- ButtonBaseAutomationPeer.cs
- ProfileSettingsCollection.cs
- X509AsymmetricSecurityKey.cs
- MappedMetaModel.cs