Code:
/ 4.0 / 4.0 / 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;
}
///
/// Indicates if the property is themeable.
///
public bool Themeable {
get {
return _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;
///
///
///
[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;
}
///
/// Indicates if the property is themeable.
///
public bool Themeable {
get {
return _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
- RSAPKCS1SignatureFormatter.cs
- RotateTransform.cs
- RoleManagerEventArgs.cs
- DataList.cs
- FacetEnabledSchemaElement.cs
- PolicyLevel.cs
- AxisAngleRotation3D.cs
- RelationshipEndCollection.cs
- SerialReceived.cs
- HandleCollector.cs
- SerializationAttributes.cs
- JoinElimination.cs
- UpdateProgress.cs
- SiteMapProvider.cs
- TableLayoutStyle.cs
- TemplateBamlTreeBuilder.cs
- HtmlInputControl.cs
- OdbcFactory.cs
- HostUtils.cs
- MobileTemplatedControlDesigner.cs
- BorderGapMaskConverter.cs
- NativeMethodsCLR.cs
- SignerInfo.cs
- BamlLocalizationDictionary.cs
- DocumentGridContextMenu.cs
- InfoCardRSAOAEPKeyExchangeFormatter.cs
- Transform3DGroup.cs
- FontStyleConverter.cs
- CreateUserWizardStep.cs
- OleDbCommand.cs
- SynchronizationLockException.cs
- XmlIgnoreAttribute.cs
- Int16.cs
- Mouse.cs
- EntityDataSourceMemberPath.cs
- ResourcePermissionBase.cs
- UserControlDocumentDesigner.cs
- WindowsTooltip.cs
- TimersDescriptionAttribute.cs
- FullTextLine.cs
- DrawingGroup.cs
- DocumentGridContextMenu.cs
- GACMembershipCondition.cs
- TraceSection.cs
- WebPartRestoreVerb.cs
- SqlNodeAnnotations.cs
- PipelineModuleStepContainer.cs
- PropertyCollection.cs
- PropertyChangingEventArgs.cs
- DesignerCategoryAttribute.cs
- ControlOperationInvoker.cs
- IResourceProvider.cs
- StatusBar.cs
- MessageBox.cs
- WindowsGraphicsWrapper.cs
- XmlDataImplementation.cs
- AuthenticationException.cs
- InkCanvas.cs
- ObjectKeyFrameCollection.cs
- CreateUserErrorEventArgs.cs
- PlanCompilerUtil.cs
- SmiTypedGetterSetter.cs
- EntryWrittenEventArgs.cs
- LogEntrySerialization.cs
- BufferedWebEventProvider.cs
- ECDiffieHellmanCng.cs
- WebPartTransformerCollection.cs
- NumericUpDown.cs
- ReaderWriterLockSlim.cs
- UriScheme.cs
- ExeConfigurationFileMap.cs
- VolatileResourceManager.cs
- AbsoluteQuery.cs
- ADConnectionHelper.cs
- ProcessHostFactoryHelper.cs
- ConfigurationSectionGroup.cs
- MultipartContentParser.cs
- SoapRpcMethodAttribute.cs
- ExtensionWindowHeader.cs
- Semaphore.cs
- uribuilder.cs
- ReadOnlyAttribute.cs
- DeclarationUpdate.cs
- EncoderFallback.cs
- IntPtr.cs
- SQLCharsStorage.cs
- Viewport3DAutomationPeer.cs
- QueryOperatorEnumerator.cs
- wgx_sdk_version.cs
- DrawingCollection.cs
- SmtpAuthenticationManager.cs
- Validator.cs
- WhereaboutsReader.cs
- OracleMonthSpan.cs
- UpdateTracker.cs
- SystemIcons.cs
- EastAsianLunisolarCalendar.cs
- ControlBuilderAttribute.cs
- GridViewUpdatedEventArgs.cs
- ProtectedConfigurationSection.cs