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
- ProfileSection.cs
- SafeEventHandle.cs
- GridProviderWrapper.cs
- EntityDataSourceWizardForm.cs
- IntSumAggregationOperator.cs
- NameValuePermission.cs
- NetworkStream.cs
- TrustLevel.cs
- TableLayoutCellPaintEventArgs.cs
- altserialization.cs
- PageHandlerFactory.cs
- SocketAddress.cs
- ListViewPagedDataSource.cs
- ISAPIApplicationHost.cs
- ManipulationInertiaStartingEventArgs.cs
- SpeechAudioFormatInfo.cs
- WorkflowFileItem.cs
- MobileControlsSectionHandler.cs
- RemotingAttributes.cs
- ResourceKey.cs
- BookmarkUndoUnit.cs
- RSAPKCS1SignatureDeformatter.cs
- MonthChangedEventArgs.cs
- Propagator.cs
- RuleProcessor.cs
- StoreUtilities.cs
- IntSecurity.cs
- GroupBoxAutomationPeer.cs
- CodeAttachEventStatement.cs
- DbMetaDataColumnNames.cs
- NullableLongMinMaxAggregationOperator.cs
- InternalConfigSettingsFactory.cs
- ApplicationSettingsBase.cs
- MethodBuilderInstantiation.cs
- Int64KeyFrameCollection.cs
- Context.cs
- SelectionItemProviderWrapper.cs
- Subtree.cs
- BooleanToVisibilityConverter.cs
- PointHitTestParameters.cs
- SingleSelectRootGridEntry.cs
- EntitySet.cs
- _NetRes.cs
- SqlMethodAttribute.cs
- DateTimeConstantAttribute.cs
- SourceFileInfo.cs
- RuleSetCollection.cs
- SynchronousSendBindingElement.cs
- BackgroundWorker.cs
- ProfileGroupSettingsCollection.cs
- ComplexBindingPropertiesAttribute.cs
- WindowsAltTab.cs
- ResXFileRef.cs
- BaseDataListComponentEditor.cs
- WindowsPrincipal.cs
- PrePrepareMethodAttribute.cs
- CustomWebEventKey.cs
- AnchoredBlock.cs
- MemberPath.cs
- userdatakeys.cs
- NavigationPropertyAccessor.cs
- Baml2006KnownTypes.cs
- WindowsFont.cs
- unitconverter.cs
- RequiredAttributeAttribute.cs
- HttpRawResponse.cs
- fixedPageContentExtractor.cs
- AudioStateChangedEventArgs.cs
- AssemblyHash.cs
- QueryExpr.cs
- XmlSchemaException.cs
- FocusTracker.cs
- ObjectTag.cs
- Atom10FormatterFactory.cs
- ToolStripDesignerAvailabilityAttribute.cs
- DataError.cs
- Matrix.cs
- DataObject.cs
- AttributeCollection.cs
- Suspend.cs
- PackageDigitalSignature.cs
- SQLMoneyStorage.cs
- SqlParameterizer.cs
- NameValueCollection.cs
- ConfigurationCollectionAttribute.cs
- ParameterSubsegment.cs
- EnumConverter.cs
- HtmlFormWrapper.cs
- AdornerPresentationContext.cs
- DesignerToolStripControlHost.cs
- SqlProvider.cs
- UpdateManifestForBrowserApplication.cs
- DataGridViewCellCollection.cs
- XmlnsDictionary.cs
- QueryCursorEventArgs.cs
- WinEventTracker.cs
- selecteditemcollection.cs
- ObjectListShowCommandsEventArgs.cs
- WebPartPersonalization.cs
- SignatureDescription.cs