Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / Tools / System.Activities.Presentation / System / Activities / Presentation / Base / Extensibility / Model / PropertyIdentifier.cs / 1305376 / PropertyIdentifier.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Activities.Presentation.Model {
using System;
using System.Windows;
using System.Runtime;
using System.Activities.Presentation;
using System.Diagnostics.CodeAnalysis;
///
/// A PropertyIdentifier is an object that represents a property. Properties
/// can be identified by name or by dependency property. Where possible,
/// you should use dependency properties as they provide higher fidelity.
///
[SuppressMessage(FxCop.Category.Performance, FxCop.Rule.AvoidUninstantiatedInternalClasses, Justification = "False posistive, used as generic parameter.")]
[Fx.Tag.XamlVisible(false)]
class PropertyIdentifier
{
private string _name;
private DependencyProperty _property;
///
/// Creates a new PropertyIdentifier.
///
public PropertyIdentifier(string name) {
if (name == null) throw FxTrace.Exception.ArgumentNull("name");
_name = name;
}
///
/// Creates a new PropertyIdentifier.
///
public PropertyIdentifier(DependencyProperty property) {
if (property == null) throw FxTrace.Exception.ArgumentNull("property");
_property = property;
_name = _property.Name;
}
///
/// The property name. This will either be the supplied name or the
/// name of the dependency property. It will never be null.
///
public string Name {
get { return _name; }
}
///
/// The dependency property this identifier represents. This
/// can be null if the property identifier was not initialized
/// with a dependency property.
///
public DependencyProperty DependencyProperty {
get { return _property; }
}
///
/// Overrride of GetHashCode.
///
public override int GetHashCode() {
return _name.GetHashCode();
}
///
/// Override of Equals to properly implement object equality for
/// PropertyIdentifier.
///
public override bool Equals(object obj) {
PropertyIdentifier other = obj as PropertyIdentifier;
if (other == null) return false;
if (_property != null && _property == other._property) return true;
if (_name.Equals(other._name, StringComparison.Ordinal)) return true;
return false;
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Activities.Presentation.Model {
using System;
using System.Windows;
using System.Runtime;
using System.Activities.Presentation;
using System.Diagnostics.CodeAnalysis;
///
/// A PropertyIdentifier is an object that represents a property. Properties
/// can be identified by name or by dependency property. Where possible,
/// you should use dependency properties as they provide higher fidelity.
///
[SuppressMessage(FxCop.Category.Performance, FxCop.Rule.AvoidUninstantiatedInternalClasses, Justification = "False posistive, used as generic parameter.")]
[Fx.Tag.XamlVisible(false)]
class PropertyIdentifier
{
private string _name;
private DependencyProperty _property;
///
/// Creates a new PropertyIdentifier.
///
public PropertyIdentifier(string name) {
if (name == null) throw FxTrace.Exception.ArgumentNull("name");
_name = name;
}
///
/// Creates a new PropertyIdentifier.
///
public PropertyIdentifier(DependencyProperty property) {
if (property == null) throw FxTrace.Exception.ArgumentNull("property");
_property = property;
_name = _property.Name;
}
///
/// The property name. This will either be the supplied name or the
/// name of the dependency property. It will never be null.
///
public string Name {
get { return _name; }
}
///
/// The dependency property this identifier represents. This
/// can be null if the property identifier was not initialized
/// with a dependency property.
///
public DependencyProperty DependencyProperty {
get { return _property; }
}
///
/// Overrride of GetHashCode.
///
public override int GetHashCode() {
return _name.GetHashCode();
}
///
/// Override of Equals to properly implement object equality for
/// PropertyIdentifier.
///
public override bool Equals(object obj) {
PropertyIdentifier other = obj as PropertyIdentifier;
if (other == null) return false;
if (_property != null && _property == other._property) return true;
if (_name.Equals(other._name, StringComparison.Ordinal)) return true;
return false;
}
}
}
// 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
- SqlClientWrapperSmiStream.cs
- OdbcRowUpdatingEvent.cs
- APCustomTypeDescriptor.cs
- Query.cs
- WebServicesDescriptionAttribute.cs
- URLString.cs
- TextModifierScope.cs
- FormView.cs
- TextRangeSerialization.cs
- PackageRelationshipCollection.cs
- TabItemAutomationPeer.cs
- XPathSingletonIterator.cs
- ResetableIterator.cs
- ObjectAnimationUsingKeyFrames.cs
- SerialReceived.cs
- ExecutionProperties.cs
- VirtualizingStackPanel.cs
- sqlpipe.cs
- elementinformation.cs
- RelationalExpressions.cs
- WSSecurityJan2004.cs
- SignatureToken.cs
- StackSpiller.Temps.cs
- SecurityIdentifierConverter.cs
- RuntimeConfigLKG.cs
- SqlCachedBuffer.cs
- WebPartDeleteVerb.cs
- WebResourceUtil.cs
- DescendantOverDescendantQuery.cs
- CollectionViewProxy.cs
- Vector3DValueSerializer.cs
- ToolStripItemImageRenderEventArgs.cs
- COM2ColorConverter.cs
- QilFunction.cs
- DataContractSerializerOperationFormatter.cs
- regiisutil.cs
- ProxySimple.cs
- CharEnumerator.cs
- Hex.cs
- ProcessStartInfo.cs
- UriGenerator.cs
- UnorderedHashRepartitionStream.cs
- TraversalRequest.cs
- TypedElement.cs
- DataPagerFieldCollection.cs
- ShaperBuffers.cs
- ColorAnimationBase.cs
- ConsoleTraceListener.cs
- Helper.cs
- EmissiveMaterial.cs
- AccessKeyManager.cs
- TopClause.cs
- FullTextLine.cs
- Gdiplus.cs
- RectAnimation.cs
- FontStretchConverter.cs
- UnhandledExceptionEventArgs.cs
- PropertyMapper.cs
- SiteMapDataSource.cs
- Rect.cs
- ClientApiGenerator.cs
- CommonBehaviorsSection.cs
- TypeBuilderInstantiation.cs
- ObjectConverter.cs
- XmlLinkedNode.cs
- SatelliteContractVersionAttribute.cs
- Directory.cs
- File.cs
- ModuleConfigurationInfo.cs
- XmlWriterTraceListener.cs
- DummyDataSource.cs
- DesignerOptionService.cs
- ExpressionParser.cs
- ChangePasswordDesigner.cs
- SerializationStore.cs
- BrowsableAttribute.cs
- GradientStop.cs
- WeakReferenceEnumerator.cs
- CellParagraph.cs
- ProviderIncompatibleException.cs
- FormClosingEvent.cs
- SQLDateTimeStorage.cs
- FileUpload.cs
- DecoderBestFitFallback.cs
- CompositionAdorner.cs
- DynamicRenderer.cs
- UnitControl.cs
- MediaPlayer.cs
- MeshGeometry3D.cs
- DataGridColumn.cs
- NumberSubstitution.cs
- ObjectReferenceStack.cs
- AssemblyNameProxy.cs
- DataGridViewComboBoxEditingControl.cs
- JsonSerializer.cs
- WebPartConnectionsDisconnectVerb.cs
- WorkflowTraceTransfer.cs
- OverflowException.cs
- RunWorkerCompletedEventArgs.cs
- SQLSingle.cs