Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / xsp / System / Web / UI / WebParts / WebPartTracker.cs / 1 / 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.Security.Permissions; using System.Web; using System.Web.UI; [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] 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; } } } }
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- MatrixValueSerializer.cs
- CounterCreationDataConverter.cs
- VirtualPathProvider.cs
- CodeFieldReferenceExpression.cs
- UriTemplateVariablePathSegment.cs
- TemplateAction.cs
- StorageEntityTypeMapping.cs
- DataSvcMapFileSerializer.cs
- WorkflowServiceHost.cs
- formatter.cs
- TimeSpanConverter.cs
- PositiveTimeSpanValidator.cs
- ExceptionUtility.cs
- ValueOfAction.cs
- filewebrequest.cs
- Properties.cs
- ObjectDesignerDataSourceView.cs
- ConditionalAttribute.cs
- ActivityExecutionContext.cs
- CustomSignedXml.cs
- TitleStyle.cs
- LinqDataSourceHelper.cs
- OpCellTreeNode.cs
- NameValuePermission.cs
- MatchingStyle.cs
- BufferedGraphicsManager.cs
- ArglessEventHandlerProxy.cs
- OperandQuery.cs
- PropertySourceInfo.cs
- HashSet.cs
- TraceContext.cs
- ErasingStroke.cs
- SystemFonts.cs
- PriorityChain.cs
- WinEventWrap.cs
- SqlOuterApplyReducer.cs
- MediaCommands.cs
- SingleTagSectionHandler.cs
- UTF7Encoding.cs
- XmlJsonWriter.cs
- WeakReferenceList.cs
- MenuCommand.cs
- SafeProcessHandle.cs
- ActivityWithResultConverter.cs
- NoneExcludedImageIndexConverter.cs
- WebScriptServiceHost.cs
- SkewTransform.cs
- GridViewPageEventArgs.cs
- SqlFlattener.cs
- XsltFunctions.cs
- SortFieldComparer.cs
- WindowsRichEditRange.cs
- TitleStyle.cs
- HttpVersion.cs
- ConfigXmlWhitespace.cs
- LinqDataSourceDisposeEventArgs.cs
- MasterPage.cs
- CommonObjectSecurity.cs
- EditorPart.cs
- ChameleonKey.cs
- IISUnsafeMethods.cs
- SingleStorage.cs
- ObjectManager.cs
- ValueType.cs
- TimelineClockCollection.cs
- DateTimeSerializationSection.cs
- SQLChars.cs
- XPathParser.cs
- StaticResourceExtension.cs
- BindStream.cs
- SoapHeader.cs
- TableItemStyle.cs
- TemplatedWizardStep.cs
- ErrorWebPart.cs
- _KerberosClient.cs
- KeyValuePairs.cs
- TargetFrameworkAttribute.cs
- UTF7Encoding.cs
- UnionCqlBlock.cs
- wmiprovider.cs
- SerializerProvider.cs
- PrivilegedConfigurationManager.cs
- ScalarType.cs
- OperatingSystem.cs
- AutomationPatternInfo.cs
- ChangeProcessor.cs
- StylusTip.cs
- RegexRunner.cs
- NodeCounter.cs
- RuntimeConfigLKG.cs
- IgnoreSection.cs
- SkinBuilder.cs
- DateTimeFormat.cs
- ZipIORawDataFileBlock.cs
- Size3D.cs
- TableAdapterManagerGenerator.cs
- ServiceOperationDetailViewControl.cs
- EntityDataSourceValidationException.cs
- DataGridViewRowHeaderCell.cs
- IntSecurity.cs