Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Web / UI / ThemeableAttribute.cs / 1305376 / ThemeableAttribute.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* */ namespace System.Web.UI { using System; using System.Collections; using System.ComponentModel; ////// [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
- HttpDictionary.cs
- PeerNameResolver.cs
- CodeThrowExceptionStatement.cs
- WorkflowViewElement.cs
- MultitargetingHelpers.cs
- SqlWriter.cs
- DecimalConverter.cs
- X509ServiceCertificateAuthenticationElement.cs
- DataGridViewRowStateChangedEventArgs.cs
- ADMembershipUser.cs
- BadImageFormatException.cs
- hresults.cs
- SiteMapPath.cs
- SqlCommand.cs
- CommandPlan.cs
- BitmapCacheBrush.cs
- NetworkAddressChange.cs
- AudioException.cs
- Encoder.cs
- BasicViewGenerator.cs
- Oid.cs
- ForceCopyBuildProvider.cs
- WebPartEditorCancelVerb.cs
- ZipIOExtraFieldPaddingElement.cs
- SystemNetworkInterface.cs
- WebScriptMetadataInstanceContextProvider.cs
- DisplayNameAttribute.cs
- SqlDataSourceSummaryPanel.cs
- TableProviderWrapper.cs
- SmtpDigestAuthenticationModule.cs
- BuiltInExpr.cs
- XmlDataLoader.cs
- HandlerBase.cs
- PenCursorManager.cs
- SymLanguageVendor.cs
- SerializationInfo.cs
- dtdvalidator.cs
- TcpConnectionPoolSettings.cs
- XmlSchemaAnnotated.cs
- XamlTreeBuilderBamlRecordWriter.cs
- GeneratedContractType.cs
- DocumentPageView.cs
- Publisher.cs
- CodeGeneratorOptions.cs
- TabItem.cs
- MultiView.cs
- FieldTemplateUserControl.cs
- TransformerInfo.cs
- WindowsTab.cs
- XmlIlVisitor.cs
- TransportConfigurationTypeElement.cs
- NamedPermissionSet.cs
- HttpCacheVaryByContentEncodings.cs
- CodeObject.cs
- DictionaryKeyPropertyAttribute.cs
- EntitySetRetriever.cs
- HiddenFieldPageStatePersister.cs
- ItemCollection.cs
- FrameworkPropertyMetadata.cs
- CallContext.cs
- QuotedPrintableStream.cs
- SubpageParaClient.cs
- ListBoxItem.cs
- Int16Storage.cs
- ProfilePropertySettingsCollection.cs
- ListControlActionList.cs
- BitStack.cs
- ApplicationHost.cs
- Route.cs
- Utils.cs
- LineProperties.cs
- EntityProxyTypeInfo.cs
- XmlWrappingReader.cs
- DiscoveryVersionConverter.cs
- _UriSyntax.cs
- LockedHandleGlyph.cs
- VirtualPathUtility.cs
- LinearGradientBrush.cs
- ConfigurationLoaderException.cs
- WsiProfilesElement.cs
- TagMapCollection.cs
- SocketSettings.cs
- CollectionChangeEventArgs.cs
- ListItemParagraph.cs
- Encoder.cs
- XmlQualifiedName.cs
- DataRelation.cs
- SafeCryptContextHandle.cs
- CurrentChangingEventArgs.cs
- ViewKeyConstraint.cs
- TcpWorkerProcess.cs
- SetStoryboardSpeedRatio.cs
- ThreadSafeList.cs
- SelectorItemAutomationPeer.cs
- XPathAxisIterator.cs
- ToolStripDropDown.cs
- BitmapPalettes.cs
- XPathDocumentBuilder.cs
- TimeoutException.cs
- DescriptionAttribute.cs