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
- ClusterRegistryConfigurationProvider.cs
- Run.cs
- ManagementOptions.cs
- AccessControlList.cs
- DrawingAttributesDefaultValueFactory.cs
- ObjectPersistData.cs
- PointAnimationUsingKeyFrames.cs
- InstanceKeyNotReadyException.cs
- Memoizer.cs
- SHA512Managed.cs
- TemplateBindingExpression.cs
- FastEncoderWindow.cs
- WindowVisualStateTracker.cs
- Setter.cs
- ResizingMessageFilter.cs
- OuterGlowBitmapEffect.cs
- mongolianshape.cs
- DataGridViewRowCollection.cs
- BrowserCapabilitiesCompiler.cs
- XmlObjectSerializerReadContextComplex.cs
- XmlDsigSep2000.cs
- AccessText.cs
- AssemblyName.cs
- Hashtable.cs
- FloaterParaClient.cs
- DataKey.cs
- SessionChannels.cs
- ApplyImportsAction.cs
- XPathSelfQuery.cs
- PackagePartCollection.cs
- DataGridSortingEventArgs.cs
- MSG.cs
- ObjectResult.cs
- NewArrayExpression.cs
- SymbolEqualComparer.cs
- SortQuery.cs
- XmlSchemaSimpleContentRestriction.cs
- LabelAutomationPeer.cs
- HierarchicalDataSourceIDConverter.cs
- ImportedPolicyConversionContext.cs
- FunctionQuery.cs
- DataGridLinkButton.cs
- DbSetClause.cs
- ExpressionNormalizer.cs
- NameGenerator.cs
- ListViewGroup.cs
- ScriptingProfileServiceSection.cs
- SelectedCellsChangedEventArgs.cs
- ListQueryResults.cs
- SettingsBindableAttribute.cs
- DateTimeUtil.cs
- StylusCaptureWithinProperty.cs
- ContentElementAutomationPeer.cs
- EntityDesignerBuildProvider.cs
- PagesChangedEventArgs.cs
- ParamArrayAttribute.cs
- TranslateTransform.cs
- SerializerProvider.cs
- AutomationIdentifier.cs
- CollectionContainer.cs
- IProducerConsumerCollection.cs
- _LocalDataStore.cs
- AnimationStorage.cs
- PersonalizationProviderCollection.cs
- Misc.cs
- RegistryConfigurationProvider.cs
- DynamicActivityXamlReader.cs
- TextRenderingModeValidation.cs
- InputReport.cs
- ScrollData.cs
- Config.cs
- EventDrivenDesigner.cs
- ResourceDictionaryCollection.cs
- DataGridViewButtonCell.cs
- CalendarAutoFormatDialog.cs
- StringConverter.cs
- SqlVersion.cs
- OptimizedTemplateContentHelper.cs
- _BufferOffsetSize.cs
- CompilationRelaxations.cs
- BitStack.cs
- CmsUtils.cs
- PathTooLongException.cs
- TextViewSelectionProcessor.cs
- Point.cs
- HandlerBase.cs
- ErrorWebPart.cs
- ObjectSelectorEditor.cs
- TextOnlyOutput.cs
- FileDetails.cs
- odbcmetadatacollectionnames.cs
- MaskInputRejectedEventArgs.cs
- CrossSiteScriptingValidation.cs
- namescope.cs
- CatalogPartDesigner.cs
- OdbcConnectionStringbuilder.cs
- SemanticBasicElement.cs
- XmlHierarchicalEnumerable.cs
- NetCodeGroup.cs
- RequestSecurityTokenForGetBrowserToken.cs