Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / Markup / Localizer / BamlLocalizableResourceKey.cs / 1305600 / 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
- TraceXPathNavigator.cs
- CompoundFileDeflateTransform.cs
- TabRenderer.cs
- PropertyDescriptorGridEntry.cs
- TraceUtils.cs
- ZipFileInfo.cs
- SizeIndependentAnimationStorage.cs
- AssociationTypeEmitter.cs
- StructureChangedEventArgs.cs
- WsatConfiguration.cs
- XmlSchemas.cs
- ChannelReliableSession.cs
- XmlQueryStaticData.cs
- ExcludePathInfo.cs
- SchemaNotation.cs
- SafeThreadHandle.cs
- DataGridViewUtilities.cs
- SerializationInfoEnumerator.cs
- CodeDomConfigurationHandler.cs
- CommandField.cs
- ViewManager.cs
- HtmlInputPassword.cs
- GetTokenRequest.cs
- PrintPreviewGraphics.cs
- MetadataLocation.cs
- EmptyEnumerable.cs
- Stream.cs
- DocumentProperties.cs
- HostingPreferredMapPath.cs
- SQLGuidStorage.cs
- KeyFrames.cs
- DiscoveryMessageProperty.cs
- BitmapEffect.cs
- EraserBehavior.cs
- ParallelLoopState.cs
- XPathEmptyIterator.cs
- ListItemCollection.cs
- ExtenderHelpers.cs
- ToolBarOverflowPanel.cs
- VisualProxy.cs
- LinkedResourceCollection.cs
- DeclarativeCatalogPart.cs
- RowType.cs
- DispatcherFrame.cs
- PerfCounterSection.cs
- NativeMethods.cs
- AlignmentXValidation.cs
- Constraint.cs
- PrimitiveSchema.cs
- DataViewManager.cs
- SelectionWordBreaker.cs
- X509UI.cs
- ScriptingScriptResourceHandlerSection.cs
- IsolatedStorage.cs
- Timer.cs
- DataGridViewAccessibleObject.cs
- EntityDataSourceReferenceGroup.cs
- DrawingAttributes.cs
- ChtmlPhoneCallAdapter.cs
- _SingleItemRequestCache.cs
- SqlNotificationRequest.cs
- ComponentConverter.cs
- RegexCompiler.cs
- TextEditorSpelling.cs
- ObjectSet.cs
- METAHEADER.cs
- Point3DAnimationUsingKeyFrames.cs
- AddInServer.cs
- TrackingWorkflowEventArgs.cs
- DbSetClause.cs
- ModifiableIteratorCollection.cs
- TextRange.cs
- PermissionAttributes.cs
- BezierSegment.cs
- ClientTarget.cs
- MethodCallTranslator.cs
- GridView.cs
- SmtpMail.cs
- SoapDocumentServiceAttribute.cs
- ColumnPropertiesGroup.cs
- ExpressionLexer.cs
- KeyboardEventArgs.cs
- UrlMappingsModule.cs
- DurableInstanceManager.cs
- NameValuePair.cs
- CharAnimationBase.cs
- ServiceReference.cs
- TemplateNodeContextMenu.cs
- StreamFormatter.cs
- MetadataException.cs
- RegexCapture.cs
- Literal.cs
- Help.cs
- IQueryable.cs
- ForceCopyBuildProvider.cs
- ClientUrlResolverWrapper.cs
- NetDataContractSerializer.cs
- isolationinterop.cs
- MobileCategoryAttribute.cs
- DirtyTextRange.cs