Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / wpf / src / Framework / System / Windows / Markup / Localizer / BamlLocalizableResourceKey.cs / 1 / BamlLocalizableResourceKey.cs
//---------------------------------------------------------------------------- // // Copyright (c) Microsoft Corporation. All rights reserved. // // Description: BamlLocalizableResourceKey class // // History: // 03/25/2005 garyyang - created the file // //--------------------------------------------------------------------------- using System; namespace System.Windows.Markup.Localizer { ////// Key to BamlLocalizableResource /// public class BamlLocalizableResourceKey { //------------------------------- // Constructor //------------------------------- internal BamlLocalizableResourceKey( string uid, string className, string propertyName, string assemblyName ) { if (uid == null) { throw new ArgumentNullException("uid"); } if (className == null) { throw new ArgumentNullException("className"); } if (propertyName == null) { throw new ArgumentNullException("propertyName"); } _uid = uid; _className = className; _propertyName = propertyName; _assemblyName = assemblyName; } ////// Construct a key to the BamlLocalizableResource. The key /// consists of name, class name and property name, which will be used to /// identify a localizable resource in Baml. /// /// The unique id of the element that has the localizable resource. It is equivalent of x:Uid in XAML file. /// class name of localizable resource in Baml. /// property name of the localizable resource in Baml public BamlLocalizableResourceKey( string uid, string className, string propertyName ) : this (uid, className, propertyName, null) { } //------------------------------- // Public properties //------------------------------- ////// Id of the element that has the localizable resource /// public string Uid { get { return _uid; } } ////// Class name of the localizable resource /// public string ClassName { get { return _className; } } ////// Property name of the localizable resource /// public string PropertyName { get { return _propertyName; } } ////// The name of the assembly that defines the type of the localizable resource. /// ////// Assembly name is not required for uniquely identifying a resource in Baml. It is /// popluated when extracting resources from Baml so that users can find the type information /// of the localizable resource. /// public string AssemblyName { get { return _assemblyName; } } ////// Compare two BamlLocalizableResourceKey objects /// /// The other BamlLocalizableResourceKey object to be compared against ///True if they are equal. False otherwise public bool Equals(BamlLocalizableResourceKey other) { if (other == null) { return false; } return _uid == other._uid && _className == other._className && _propertyName == other._propertyName; } ////// Compare two BamlLocalizableResourceKey objects /// /// The other BamlLocalizableResourceKey object to be compared against ///True if they are equal. False otherwise public override bool Equals(object other) { return Equals(other as BamlLocalizableResourceKey); } ////// Get the hashcode of this object /// ///Hash code public override int GetHashCode() { return _uid.GetHashCode() ^ _className.GetHashCode() ^ _propertyName.GetHashCode(); } //------------------------------- // Private members //------------------------------- private string _uid; private string _className; private string _propertyName; private string _assemblyName; } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //---------------------------------------------------------------------------- // // Copyright (c) Microsoft Corporation. All rights reserved. // // Description: BamlLocalizableResourceKey class // // History: // 03/25/2005 garyyang - created the file // //--------------------------------------------------------------------------- using System; namespace System.Windows.Markup.Localizer { ////// Key to BamlLocalizableResource /// public class BamlLocalizableResourceKey { //------------------------------- // Constructor //------------------------------- internal BamlLocalizableResourceKey( string uid, string className, string propertyName, string assemblyName ) { if (uid == null) { throw new ArgumentNullException("uid"); } if (className == null) { throw new ArgumentNullException("className"); } if (propertyName == null) { throw new ArgumentNullException("propertyName"); } _uid = uid; _className = className; _propertyName = propertyName; _assemblyName = assemblyName; } ////// Construct a key to the BamlLocalizableResource. The key /// consists of name, class name and property name, which will be used to /// identify a localizable resource in Baml. /// /// The unique id of the element that has the localizable resource. It is equivalent of x:Uid in XAML file. /// class name of localizable resource in Baml. /// property name of the localizable resource in Baml public BamlLocalizableResourceKey( string uid, string className, string propertyName ) : this (uid, className, propertyName, null) { } //------------------------------- // Public properties //------------------------------- ////// Id of the element that has the localizable resource /// public string Uid { get { return _uid; } } ////// Class name of the localizable resource /// public string ClassName { get { return _className; } } ////// Property name of the localizable resource /// public string PropertyName { get { return _propertyName; } } ////// The name of the assembly that defines the type of the localizable resource. /// ////// Assembly name is not required for uniquely identifying a resource in Baml. It is /// popluated when extracting resources from Baml so that users can find the type information /// of the localizable resource. /// public string AssemblyName { get { return _assemblyName; } } ////// Compare two BamlLocalizableResourceKey objects /// /// The other BamlLocalizableResourceKey object to be compared against ///True if they are equal. False otherwise public bool Equals(BamlLocalizableResourceKey other) { if (other == null) { return false; } return _uid == other._uid && _className == other._className && _propertyName == other._propertyName; } ////// Compare two BamlLocalizableResourceKey objects /// /// The other BamlLocalizableResourceKey object to be compared against ///True if they are equal. False otherwise public override bool Equals(object other) { return Equals(other as BamlLocalizableResourceKey); } ////// Get the hashcode of this object /// ///Hash code public override int GetHashCode() { return _uid.GetHashCode() ^ _className.GetHashCode() ^ _propertyName.GetHashCode(); } //------------------------------- // Private members //------------------------------- private string _uid; private string _className; private string _propertyName; private string _assemblyName; } } // 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
- GetTokenRequest.cs
- ThreadStartException.cs
- BlockUIContainer.cs
- XmlQueryCardinality.cs
- FillBehavior.cs
- ObjectViewEntityCollectionData.cs
- TextElementEditingBehaviorAttribute.cs
- WindowsClientCredential.cs
- NativeCppClassAttribute.cs
- ServerType.cs
- Rotation3DKeyFrameCollection.cs
- Binding.cs
- NativeWindow.cs
- XmlSerializer.cs
- AffineTransform3D.cs
- SqlFunctionAttribute.cs
- DesignSurface.cs
- PageStatePersister.cs
- XmlValidatingReader.cs
- AssociatedControlConverter.cs
- OpCodes.cs
- KerberosSecurityTokenAuthenticator.cs
- SafeNativeMethods.cs
- CodeMethodInvokeExpression.cs
- StreamResourceInfo.cs
- MetaData.cs
- PartitionedStreamMerger.cs
- MenuAdapter.cs
- DiscoveryOperationContextExtension.cs
- ReferencedAssemblyResolver.cs
- Rect3D.cs
- TaskFormBase.cs
- SrgsElementFactory.cs
- AnnotationObservableCollection.cs
- TrackingMemoryStreamFactory.cs
- Menu.cs
- OptimalTextSource.cs
- EdmConstants.cs
- PointLight.cs
- TdsParserStateObject.cs
- TextCharacters.cs
- ButtonDesigner.cs
- DetailsViewPagerRow.cs
- Axis.cs
- PasswordRecovery.cs
- LogSwitch.cs
- mediaeventshelper.cs
- SigningCredentials.cs
- HandleRef.cs
- Calendar.cs
- InternalCache.cs
- WithParamAction.cs
- TextTreeUndo.cs
- DebuggerAttributes.cs
- XPathMessageFilter.cs
- FileVersionInfo.cs
- RangeValuePatternIdentifiers.cs
- ToolStripTemplateNode.cs
- _FtpControlStream.cs
- TableCell.cs
- StreamResourceInfo.cs
- HostedAspNetEnvironment.cs
- AnonymousIdentificationModule.cs
- DataGridBoolColumn.cs
- InvalidOleVariantTypeException.cs
- Error.cs
- RepeatBehaviorConverter.cs
- HttpListenerException.cs
- SoapEnumAttribute.cs
- FillBehavior.cs
- ListView.cs
- CanExecuteRoutedEventArgs.cs
- DynamicRenderer.cs
- NameObjectCollectionBase.cs
- BamlMapTable.cs
- FontNameEditor.cs
- AncestorChangedEventArgs.cs
- XPathAncestorIterator.cs
- XmlWriterTraceListener.cs
- Double.cs
- sqlinternaltransaction.cs
- CompilationLock.cs
- SegmentInfo.cs
- NumberSubstitution.cs
- BitmapEffect.cs
- AppDomainShutdownMonitor.cs
- ServiceModelActivity.cs
- webclient.cs
- TemplatedWizardStep.cs
- SizeChangedEventArgs.cs
- ProxyWebPartConnectionCollection.cs
- SrgsElementList.cs
- EncoderParameter.cs
- HttpApplication.cs
- ValueTypeFixupInfo.cs
- TextPatternIdentifiers.cs
- BindingManagerDataErrorEventArgs.cs
- CodeDirectiveCollection.cs
- ListViewGroupConverter.cs
- SoapReflectionImporter.cs