Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / wpf / src / Framework / System / Windows / ComponentResourceKey.cs / 1 / ComponentResourceKey.cs
using System; using System.Reflection; using System.Text; using System.ComponentModel; namespace System.Windows { ////// Key class for custom components to define the names of their resources to be loaded by SystemResources. /// [TypeConverter(typeof(System.Windows.Markup.ComponentResourceKeyConverter))] public class ComponentResourceKey : ResourceKey { ////// Default constructor. Type and ID are null. /// public ComponentResourceKey() { } ////// Type and ID are initialized to the specified parameters. /// /// The Type to which this key is associated. /// A unique ID to differentiate this key from others associated with this type. public ComponentResourceKey(Type typeInTargetAssembly, object resourceId) { if (typeInTargetAssembly == null) { throw new ArgumentNullException("typeInTargetAssembly"); } if (resourceId == null) { throw new ArgumentNullException("resourceId"); } _typeInTargetAssembly = typeInTargetAssembly; _typeInTargetAssemblyInitialized = true; _resourceId = resourceId; _resourceIdInitialized = true; } ////// The Type associated with this resources. Must be in assembly where the resource is located. /// public Type TypeInTargetAssembly { get { return _typeInTargetAssembly; } set { if (value == null) { throw new ArgumentNullException("value"); } if (_typeInTargetAssemblyInitialized) { throw new InvalidOperationException(SR.Get(SRID.ChangingTypeNotAllowed)); } _typeInTargetAssembly = value; _typeInTargetAssemblyInitialized = true; } } ////// Used to determine where to look for the resource dictionary that holds this resource. /// public override Assembly Assembly { get { return (_typeInTargetAssembly != null) ? _typeInTargetAssembly.Assembly : null; } } ////// A unique Id to differentiate this key from other keys associated with the same type. /// public object ResourceId { get { return _resourceId; } set { if (_resourceIdInitialized) { throw new InvalidOperationException(SR.Get(SRID.ChangingIdNotAllowed)); } _resourceId = value; _resourceIdInitialized = true; } } ////// Determines if the passed in object is equal to this object. /// Two keys will be equal if they both have equal Types and IDs. /// /// The object to compare with. ///True if the objects are equal. False otherwise. public override bool Equals(object o) { ComponentResourceKey key = o as ComponentResourceKey; if (key != null) { return ((key._typeInTargetAssembly != null) ? key._typeInTargetAssembly.Equals(this._typeInTargetAssembly) : (this._typeInTargetAssembly == null)) && ((key._resourceId != null) ? key._resourceId.Equals(this._resourceId) : (this._resourceId == null)); } return false; } ////// Serves as a hash function for a particular type. /// public override int GetHashCode() { return ((_typeInTargetAssembly != null) ? _typeInTargetAssembly.GetHashCode() : 0) ^ ((_resourceId != null) ? _resourceId.GetHashCode() : 0); } ////// return string representation of this key /// ///the string representation of the key public override string ToString() { StringBuilder strBuilder = new StringBuilder(256); strBuilder.Append("TargetType="); strBuilder.Append((_typeInTargetAssembly != null) ? _typeInTargetAssembly.FullName : "null"); strBuilder.Append(" ID="); strBuilder.Append((_resourceId != null) ? _resourceId.ToString() : "null"); return strBuilder.ToString(); } private Type _typeInTargetAssembly; private bool _typeInTargetAssemblyInitialized; private object _resourceId; private bool _resourceIdInitialized; } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. using System; using System.Reflection; using System.Text; using System.ComponentModel; namespace System.Windows { ////// Key class for custom components to define the names of their resources to be loaded by SystemResources. /// [TypeConverter(typeof(System.Windows.Markup.ComponentResourceKeyConverter))] public class ComponentResourceKey : ResourceKey { ////// Default constructor. Type and ID are null. /// public ComponentResourceKey() { } ////// Type and ID are initialized to the specified parameters. /// /// The Type to which this key is associated. /// A unique ID to differentiate this key from others associated with this type. public ComponentResourceKey(Type typeInTargetAssembly, object resourceId) { if (typeInTargetAssembly == null) { throw new ArgumentNullException("typeInTargetAssembly"); } if (resourceId == null) { throw new ArgumentNullException("resourceId"); } _typeInTargetAssembly = typeInTargetAssembly; _typeInTargetAssemblyInitialized = true; _resourceId = resourceId; _resourceIdInitialized = true; } ////// The Type associated with this resources. Must be in assembly where the resource is located. /// public Type TypeInTargetAssembly { get { return _typeInTargetAssembly; } set { if (value == null) { throw new ArgumentNullException("value"); } if (_typeInTargetAssemblyInitialized) { throw new InvalidOperationException(SR.Get(SRID.ChangingTypeNotAllowed)); } _typeInTargetAssembly = value; _typeInTargetAssemblyInitialized = true; } } ////// Used to determine where to look for the resource dictionary that holds this resource. /// public override Assembly Assembly { get { return (_typeInTargetAssembly != null) ? _typeInTargetAssembly.Assembly : null; } } ////// A unique Id to differentiate this key from other keys associated with the same type. /// public object ResourceId { get { return _resourceId; } set { if (_resourceIdInitialized) { throw new InvalidOperationException(SR.Get(SRID.ChangingIdNotAllowed)); } _resourceId = value; _resourceIdInitialized = true; } } ////// Determines if the passed in object is equal to this object. /// Two keys will be equal if they both have equal Types and IDs. /// /// The object to compare with. ///True if the objects are equal. False otherwise. public override bool Equals(object o) { ComponentResourceKey key = o as ComponentResourceKey; if (key != null) { return ((key._typeInTargetAssembly != null) ? key._typeInTargetAssembly.Equals(this._typeInTargetAssembly) : (this._typeInTargetAssembly == null)) && ((key._resourceId != null) ? key._resourceId.Equals(this._resourceId) : (this._resourceId == null)); } return false; } ////// Serves as a hash function for a particular type. /// public override int GetHashCode() { return ((_typeInTargetAssembly != null) ? _typeInTargetAssembly.GetHashCode() : 0) ^ ((_resourceId != null) ? _resourceId.GetHashCode() : 0); } ////// return string representation of this key /// ///the string representation of the key public override string ToString() { StringBuilder strBuilder = new StringBuilder(256); strBuilder.Append("TargetType="); strBuilder.Append((_typeInTargetAssembly != null) ? _typeInTargetAssembly.FullName : "null"); strBuilder.Append(" ID="); strBuilder.Append((_resourceId != null) ? _resourceId.ToString() : "null"); return strBuilder.ToString(); } private Type _typeInTargetAssembly; private bool _typeInTargetAssemblyInitialized; private object _resourceId; private bool _resourceIdInitialized; } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ConcurrentQueue.cs
- DataGridViewHitTestInfo.cs
- FormParameter.cs
- SoapInteropTypes.cs
- SkinIDTypeConverter.cs
- TextChangedEventArgs.cs
- MethodToken.cs
- XmlNamespaceManager.cs
- KeyFrames.cs
- StateMachineAction.cs
- NotImplementedException.cs
- ScrollContentPresenter.cs
- ArgumentException.cs
- OuterGlowBitmapEffect.cs
- IRCollection.cs
- ObjectKeyFrameCollection.cs
- MimeMapping.cs
- CodeIdentifiers.cs
- CompoundFileDeflateTransform.cs
- RoleGroup.cs
- MediaTimeline.cs
- MeshGeometry3D.cs
- DaylightTime.cs
- LinqMaximalSubtreeNominator.cs
- SR.Designer.cs
- CaseInsensitiveComparer.cs
- CheckBox.cs
- XmlArrayItemAttributes.cs
- ActiveXSerializer.cs
- AspCompat.cs
- DesignConnectionCollection.cs
- ProfilePropertyMetadata.cs
- UIElement3D.cs
- CompiledIdentityConstraint.cs
- OSFeature.cs
- XmlSchemas.cs
- ObjectRef.cs
- HtmlToClrEventProxy.cs
- AspCompat.cs
- XmlCDATASection.cs
- AutoResizedEvent.cs
- TracedNativeMethods.cs
- RadioButtonFlatAdapter.cs
- DataGridToolTip.cs
- XmlCountingReader.cs
- DataGridSortCommandEventArgs.cs
- _LocalDataStore.cs
- ListViewInsertEventArgs.cs
- AppDomainAttributes.cs
- UrlMapping.cs
- XXXInfos.cs
- Variant.cs
- CompModSwitches.cs
- PngBitmapEncoder.cs
- BookmarkScopeInfo.cs
- DbParameterCollectionHelper.cs
- PropertyIDSet.cs
- HttpRuntimeSection.cs
- StreamAsIStream.cs
- XPathDocumentIterator.cs
- HwndHost.cs
- TextPointerBase.cs
- DataProviderNameConverter.cs
- Vector3DAnimation.cs
- StaticFileHandler.cs
- BindUriHelper.cs
- mediaeventargs.cs
- DataSysAttribute.cs
- DataException.cs
- TriggerBase.cs
- CodeGenerationManager.cs
- HttpProfileGroupBase.cs
- XmlQuerySequence.cs
- ContractValidationHelper.cs
- WinFormsSecurity.cs
- Switch.cs
- ProxyAttribute.cs
- X509Certificate.cs
- ImageButton.cs
- StorageAssociationTypeMapping.cs
- Command.cs
- Soap.cs
- EmptyElement.cs
- XamlTypeWithExplicitNamespace.cs
- ResourceWriter.cs
- Geometry.cs
- basevalidator.cs
- LOSFormatter.cs
- SizeConverter.cs
- CodeParameterDeclarationExpression.cs
- PointCollection.cs
- DataSourceControl.cs
- CodeMemberEvent.cs
- ObjectParameter.cs
- ConfigXmlText.cs
- XmlWhitespace.cs
- DiscreteKeyFrames.cs
- SystemColors.cs
- DeadCharTextComposition.cs
- AttachedPropertyDescriptor.cs