Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / 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;
}
}
}
}
// 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.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;
}
}
}
}
// 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
- objectquery_tresulttype.cs
- BamlBinaryReader.cs
- ReflectPropertyDescriptor.cs
- EpmTargetPathSegment.cs
- WindowsFormsHost.cs
- ConnectionManagementElement.cs
- PolygonHotSpot.cs
- TreeNodeMouseHoverEvent.cs
- ScriptResourceDefinition.cs
- EventLogPermissionEntry.cs
- UnmanagedBitmapWrapper.cs
- ActiveXHelper.cs
- DataGridViewUtilities.cs
- PopOutPanel.cs
- DataGridViewRowEventArgs.cs
- EventLevel.cs
- AxDesigner.cs
- ChangeDirector.cs
- ConfigurationSectionCollection.cs
- _SingleItemRequestCache.cs
- ProxyHelper.cs
- TimerElapsedEvenArgs.cs
- Button.cs
- CallbackValidatorAttribute.cs
- _NestedMultipleAsyncResult.cs
- HttpConfigurationContext.cs
- DataSysAttribute.cs
- TypeElementCollection.cs
- EmptyReadOnlyDictionaryInternal.cs
- CursorConverter.cs
- StylusPointProperties.cs
- SafeThreadHandle.cs
- FloatAverageAggregationOperator.cs
- InvalidPrinterException.cs
- FixedPageAutomationPeer.cs
- FixedDSBuilder.cs
- DynamicPropertyHolder.cs
- HostSecurityManager.cs
- StructuredTypeEmitter.cs
- NativeMethods.cs
- ValueExpressions.cs
- InvokeMemberBinder.cs
- JsonReader.cs
- CharStorage.cs
- baseshape.cs
- DrawingBrush.cs
- RepeaterItem.cs
- ChangePassword.cs
- SpeechAudioFormatInfo.cs
- AttributedMetaModel.cs
- ChangePassword.cs
- WMIGenerator.cs
- PeerEndPoint.cs
- FixedBufferAttribute.cs
- ValidationHelpers.cs
- XmlCompatibilityReader.cs
- UIAgentAsyncEndRequest.cs
- hresults.cs
- XPathCompileException.cs
- DbRetry.cs
- path.cs
- ZipIOBlockManager.cs
- StatusBarItem.cs
- UpDownBase.cs
- CompilerCollection.cs
- MailMessage.cs
- PopupRoot.cs
- Membership.cs
- ToolStripItem.cs
- WinEventTracker.cs
- WCFModelStrings.Designer.cs
- Win32Interop.cs
- CompositeKey.cs
- TypeLoader.cs
- CatalogPartChrome.cs
- ExtensibleClassFactory.cs
- XmlLanguageConverter.cs
- SqlNodeTypeOperators.cs
- ComplexLine.cs
- FileDialog_Vista.cs
- ExtensionQuery.cs
- CheckBoxPopupAdapter.cs
- LinkClickEvent.cs
- Vector3DConverter.cs
- BufferBuilder.cs
- UserNameSecurityTokenProvider.cs
- ByValueEqualityComparer.cs
- TransactionalPackage.cs
- DispatcherEventArgs.cs
- TextFormatterContext.cs
- PrePostDescendentsWalker.cs
- MediaElementAutomationPeer.cs
- ColorTranslator.cs
- WindowsAuthenticationEventArgs.cs
- TextModifier.cs
- MethodMessage.cs
- AnimationStorage.cs
- TextEditorDragDrop.cs
- FontNamesConverter.cs
- BoolExpr.cs