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
- DocumentPageView.cs
- PhoneCallDesigner.cs
- CqlErrorHelper.cs
- Effect.cs
- MaterialCollection.cs
- X509Utils.cs
- Convert.cs
- FileStream.cs
- SerialReceived.cs
- QueryAsyncResult.cs
- TypeDescriptor.cs
- OperatingSystem.cs
- ArraySubsetEnumerator.cs
- AssemblyBuilder.cs
- HtmlMeta.cs
- CachedFontFamily.cs
- BoolExpression.cs
- LabelLiteral.cs
- TimeSpanMinutesOrInfiniteConverter.cs
- Page.cs
- KnownTypes.cs
- AstNode.cs
- ValidationSummary.cs
- RegisteredDisposeScript.cs
- ObjectQueryExecutionPlan.cs
- SubstitutionDesigner.cs
- WebServiceReceive.cs
- UdpChannelFactory.cs
- UdpSocket.cs
- EntitySqlQueryState.cs
- Repeater.cs
- ClientUIRequest.cs
- StreamHelper.cs
- TraceContextRecord.cs
- PageCache.cs
- StreamAsIStream.cs
- LocalizableAttribute.cs
- PerfCounters.cs
- DataReaderContainer.cs
- GridViewColumnCollectionChangedEventArgs.cs
- SqlCacheDependencyDatabaseCollection.cs
- DeflateEmulationStream.cs
- Errors.cs
- Pens.cs
- ALinqExpressionVisitor.cs
- CodeAttributeArgument.cs
- DataGridViewTextBoxColumn.cs
- PatternMatcher.cs
- CodePageEncoding.cs
- ListBoxItemWrapperAutomationPeer.cs
- TraceContextRecord.cs
- DBSchemaTable.cs
- ParentUndoUnit.cs
- DataGridRowDetailsEventArgs.cs
- SevenBitStream.cs
- SizeF.cs
- RootBrowserWindowProxy.cs
- AudioException.cs
- srgsitem.cs
- RijndaelManagedTransform.cs
- CalculatedColumn.cs
- ListParaClient.cs
- DataGridViewSelectedRowCollection.cs
- _AcceptOverlappedAsyncResult.cs
- WindowsFormsSynchronizationContext.cs
- PrintController.cs
- SerializationInfo.cs
- DataRowView.cs
- StringValueSerializer.cs
- QueryOperator.cs
- ValidatedControlConverter.cs
- ClientData.cs
- ErrorTolerantObjectWriter.cs
- ExtendLockAsyncResult.cs
- OperationValidationEventArgs.cs
- ServiceHandle.cs
- SecurityPermission.cs
- TextServicesPropertyRanges.cs
- XappLauncher.cs
- TraceUtils.cs
- URLIdentityPermission.cs
- ProviderConnectionPointCollection.cs
- XmlDataLoader.cs
- PeerHopCountAttribute.cs
- ClientFormsIdentity.cs
- CodeTypeReference.cs
- util.cs
- XmlSchemaAttribute.cs
- InstanceCreationEditor.cs
- EventLogEntryCollection.cs
- RepeaterItem.cs
- httpstaticobjectscollection.cs
- RayHitTestParameters.cs
- SizeConverter.cs
- WebCategoryAttribute.cs
- CSharpCodeProvider.cs
- PenThreadWorker.cs
- WindowsFormsSynchronizationContext.cs
- ToolCreatedEventArgs.cs
- InitializeCorrelation.cs