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
- WaitHandle.cs
- XmlEncodedRawTextWriter.cs
- EntitySqlException.cs
- MessageDecoder.cs
- EventLog.cs
- EncoderBestFitFallback.cs
- EventLevel.cs
- XsltException.cs
- PcmConverter.cs
- BufferedGraphics.cs
- XmlValidatingReaderImpl.cs
- ColumnWidthChangingEvent.cs
- CodeAttributeArgumentCollection.cs
- wmiprovider.cs
- OdbcEnvironment.cs
- WorkflowTimerService.cs
- DetailsView.cs
- SetStateEventArgs.cs
- SqlDataSourceAdvancedOptionsForm.cs
- xmlfixedPageInfo.cs
- Recipient.cs
- Switch.cs
- SQLCharsStorage.cs
- CurrencyWrapper.cs
- CaseInsensitiveHashCodeProvider.cs
- ColorAnimationUsingKeyFrames.cs
- NavigationHelper.cs
- UnmanagedMemoryStream.cs
- DelegatingConfigHost.cs
- TableLayoutStyleCollection.cs
- InlineCollection.cs
- Action.cs
- XmlSchemaAttributeGroupRef.cs
- OletxDependentTransaction.cs
- IPAddress.cs
- WmiEventSink.cs
- Gdiplus.cs
- GeneralTransformCollection.cs
- LoadedEvent.cs
- SmtpTransport.cs
- TimeoutException.cs
- ProgressBar.cs
- HtmlElement.cs
- AbandonedMutexException.cs
- ComboBoxAutomationPeer.cs
- EDesignUtil.cs
- ByteStreamMessageEncoder.cs
- COM2ColorConverter.cs
- IMembershipProvider.cs
- IteratorFilter.cs
- VirtualizedItemPattern.cs
- ResourcePermissionBaseEntry.cs
- InheritedPropertyChangedEventArgs.cs
- ClientScriptManagerWrapper.cs
- LineVisual.cs
- PageHandlerFactory.cs
- SchemaAttDef.cs
- ObjectQueryProvider.cs
- RequiredFieldValidator.cs
- BuildManagerHost.cs
- DataKeyPropertyAttribute.cs
- DispatchOperation.cs
- InputScopeNameConverter.cs
- MessageSecurityException.cs
- ListViewUpdateEventArgs.cs
- EnumConverter.cs
- BindingCollection.cs
- AliasGenerator.cs
- ThemeDictionaryExtension.cs
- QueryReaderSettings.cs
- ColumnCollection.cs
- WindowsSysHeader.cs
- OpCopier.cs
- DataGridViewColumnConverter.cs
- FileAuthorizationModule.cs
- AuthenticationServiceManager.cs
- Rotation3DAnimationUsingKeyFrames.cs
- JsonReader.cs
- FaultContractAttribute.cs
- DesignerTextWriter.cs
- SvcMapFile.cs
- SHA384.cs
- Trigger.cs
- MemberCollection.cs
- StrokeNodeOperations.cs
- ToolStripItemImageRenderEventArgs.cs
- ContravarianceAdapter.cs
- TextParagraph.cs
- basemetadatamappingvisitor.cs
- DataGridViewLayoutData.cs
- CodeBinaryOperatorExpression.cs
- UnsafeMethods.cs
- XamlBrushSerializer.cs
- DataGridViewCellStyle.cs
- SafeNativeMethods.cs
- ApplicationManager.cs
- Page.cs
- UIntPtr.cs
- SoundPlayerAction.cs
- DefaultProxySection.cs