Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / ndp / fx / src / xsp / System / Web / UI / ThemeableAttribute.cs / 1 / ThemeableAttribute.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* */ namespace System.Web.UI { using System; using System.Collections; using System.ComponentModel; using System.Security.Permissions; ////// [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] [AttributeUsage(AttributeTargets.Property | AttributeTargets.Class)] public sealed class ThemeableAttribute : Attribute { ////// /// /// public static readonly ThemeableAttribute Yes = new ThemeableAttribute(true); ////// /// /// public static readonly ThemeableAttribute No = new ThemeableAttribute(false); ////// /// /// public static readonly ThemeableAttribute Default = Yes; private bool _themeable = false; private static Hashtable _themeableTypes; static ThemeableAttribute() { // Create a synchronized wrapper _themeableTypes = Hashtable.Synchronized(new Hashtable()); } ////// /// public ThemeableAttribute(bool themeable) { _themeable = themeable; } ////// public bool Themeable { get { return _themeable; } } ///Indicates if the property is themeable. ///public override bool Equals(object obj) { if (obj == this) { return true; } ThemeableAttribute other = obj as ThemeableAttribute; return (other != null) && (other.Themeable == _themeable); } /// public override int GetHashCode() { return _themeable.GetHashCode(); } /// public override bool IsDefaultAttribute() { return this.Equals(Default); } public static bool IsObjectThemeable(Object instance) { if (instance == null) throw new ArgumentNullException("instance"); return IsTypeThemeable(instance.GetType()); } public static bool IsTypeThemeable(Type type) { if (type == null) throw new ArgumentNullException("type"); object result = _themeableTypes[type]; if (result != null) { return (bool)result; } //System.ComponentModel.AttributeCollection attrs = TypeDescriptor.GetAttributes(type); //ThemeableAttribute attr = (ThemeableAttribute)attrs[typeof(ThemeableAttribute)]; ThemeableAttribute attr = Attribute.GetCustomAttribute(type, typeof(ThemeableAttribute)) as ThemeableAttribute; result = (attr != null) && attr.Themeable; _themeableTypes[type] = result; return (bool)result; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ // // Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* */ namespace System.Web.UI { using System; using System.Collections; using System.ComponentModel; using System.Security.Permissions; ////// [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] [AttributeUsage(AttributeTargets.Property | AttributeTargets.Class)] public sealed class ThemeableAttribute : Attribute { ////// /// /// public static readonly ThemeableAttribute Yes = new ThemeableAttribute(true); ////// /// /// public static readonly ThemeableAttribute No = new ThemeableAttribute(false); ////// /// /// public static readonly ThemeableAttribute Default = Yes; private bool _themeable = false; private static Hashtable _themeableTypes; static ThemeableAttribute() { // Create a synchronized wrapper _themeableTypes = Hashtable.Synchronized(new Hashtable()); } ////// /// public ThemeableAttribute(bool themeable) { _themeable = themeable; } ////// public bool Themeable { get { return _themeable; } } ///Indicates if the property is themeable. ///public override bool Equals(object obj) { if (obj == this) { return true; } ThemeableAttribute other = obj as ThemeableAttribute; return (other != null) && (other.Themeable == _themeable); } /// public override int GetHashCode() { return _themeable.GetHashCode(); } /// public override bool IsDefaultAttribute() { return this.Equals(Default); } public static bool IsObjectThemeable(Object instance) { if (instance == null) throw new ArgumentNullException("instance"); return IsTypeThemeable(instance.GetType()); } public static bool IsTypeThemeable(Type type) { if (type == null) throw new ArgumentNullException("type"); object result = _themeableTypes[type]; if (result != null) { return (bool)result; } //System.ComponentModel.AttributeCollection attrs = TypeDescriptor.GetAttributes(type); //ThemeableAttribute attr = (ThemeableAttribute)attrs[typeof(ThemeableAttribute)]; ThemeableAttribute attr = Attribute.GetCustomAttribute(type, typeof(ThemeableAttribute)) as ThemeableAttribute; result = (attr != null) && attr.Themeable; _themeableTypes[type] = result; return (bool)result; } } } // 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
- CacheOutputQuery.cs
- LinearKeyFrames.cs
- NullableBoolConverter.cs
- FileNotFoundException.cs
- TaskResultSetter.cs
- OpenTypeLayout.cs
- PartialCachingControl.cs
- FormCollection.cs
- MetadataItemEmitter.cs
- RequestSecurityTokenResponse.cs
- DispatcherExceptionEventArgs.cs
- BasePropertyDescriptor.cs
- TrackingStringDictionary.cs
- DispatcherExceptionEventArgs.cs
- ResourcePermissionBase.cs
- EventToken.cs
- XPathDocumentNavigator.cs
- BinaryNode.cs
- Regex.cs
- AmbientLight.cs
- ListControlBoundActionList.cs
- XmlDataSource.cs
- HttpMethodAttribute.cs
- EnumValAlphaComparer.cs
- BitmapSourceSafeMILHandle.cs
- MessageBox.cs
- HWStack.cs
- OutOfMemoryException.cs
- AccessViolationException.cs
- UrlMappingsSection.cs
- StructuredCompositeActivityDesigner.cs
- x509utils.cs
- WhitespaceRule.cs
- MetadataArtifactLoaderCompositeResource.cs
- Size3DValueSerializer.cs
- WebPartActionVerb.cs
- GuidTagList.cs
- DoubleKeyFrameCollection.cs
- WebPartDisplayModeEventArgs.cs
- PageVisual.cs
- PersistenceProviderBehavior.cs
- AuthorizationRule.cs
- QueryOutputWriterV1.cs
- System.Data.OracleClient_BID.cs
- _NegoStream.cs
- WeakReadOnlyCollection.cs
- ListItem.cs
- ResXResourceReader.cs
- TraceSource.cs
- SHA1.cs
- _ListenerResponseStream.cs
- DataGridRowAutomationPeer.cs
- SizeValueSerializer.cs
- ResourceAssociationType.cs
- Atom10FormatterFactory.cs
- NavigationPropertyEmitter.cs
- SoapReflectionImporter.cs
- ProgressBarRenderer.cs
- ProtectedProviderSettings.cs
- SecurityDescriptor.cs
- AttributeTableBuilder.cs
- StoreAnnotationsMap.cs
- DuplicateDetector.cs
- recordstatefactory.cs
- ProcessManager.cs
- HtmlTable.cs
- Margins.cs
- SQLInt32Storage.cs
- ToolStripItemImageRenderEventArgs.cs
- HealthMonitoringSectionHelper.cs
- InstancePersistenceCommand.cs
- XPathDocumentNavigator.cs
- InputScopeAttribute.cs
- DesignerTextBoxAdapter.cs
- StateBag.cs
- XmlWrappingReader.cs
- Instrumentation.cs
- ProxyWebPart.cs
- AttributeCollection.cs
- DataKey.cs
- WebBrowserNavigatingEventHandler.cs
- HostedTransportConfigurationBase.cs
- BufferAllocator.cs
- LinkGrep.cs
- OperatingSystem.cs
- CertificateManager.cs
- ImageUrlEditor.cs
- ToolboxItemCollection.cs
- InputScopeConverter.cs
- BinaryUtilClasses.cs
- SqlProfileProvider.cs
- SerializationFieldInfo.cs
- LinqDataSourceValidationException.cs
- RegexRunnerFactory.cs
- sqlser.cs
- HttpRequestTraceRecord.cs
- bidPrivateBase.cs
- SamlSerializer.cs
- DispatcherHooks.cs
- SQLDecimal.cs