Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Base / System / Windows / DependencyPropertyKey.cs / 1 / DependencyPropertyKey.cs
using System; using System.Diagnostics; // For Assert namespace System.Windows { ////// Authorization key for access to read-only DependencyProperty. /// Acquired via DependencyProperty.RegisterReadOnly/RegisterAttachedReadOnly /// and used in DependencyObject.SetValue/ClearValue. /// ////// This object can have a transient state upon creation where the _dp /// field can be null until initialized. However in use _dp needs to always /// be non-null. Otherwise it is treated as a key that can't unlock anything. /// (When needed, this property is available via the static constant NoAccess. /// public sealed class DependencyPropertyKey { ////// The DependencyProperty associated with this access key. This key /// does not authorize access to any other property. /// public DependencyProperty DependencyProperty { get { return _dp; } } internal DependencyPropertyKey(DependencyProperty dp) { _dp = dp; } ////// Override the metadata of a property that is already secured with /// this key. /// public void OverrideMetadata( Type forType, PropertyMetadata typeMetadata ) { if( _dp == null ) { throw new InvalidOperationException(); } _dp.OverrideMetadata( forType, typeMetadata, this ); } // This is not a property setter because we can't have a public // property getter and a internal property setter on the same property. internal void SetDependencyProperty(DependencyProperty dp) { Debug.Assert(_dp==null,"This should only be used when we need a placeholder and have a temporary value of null. It should not be used to change this property."); _dp = dp; } private DependencyProperty _dp = null; } } // 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
- NumericUpDown.cs
- BrushMappingModeValidation.cs
- XmlBaseReader.cs
- SelectionRangeConverter.cs
- LayoutEvent.cs
- FormattedText.cs
- SettingsPropertyNotFoundException.cs
- OuterGlowBitmapEffect.cs
- InternalBufferOverflowException.cs
- CollectionChange.cs
- CheckBoxBaseAdapter.cs
- TransformerTypeCollection.cs
- WhitespaceRuleReader.cs
- SchemaCollectionPreprocessor.cs
- OleDbConnectionInternal.cs
- RIPEMD160Managed.cs
- GlyphTypeface.cs
- ScrollItemProviderWrapper.cs
- Propagator.JoinPropagator.cs
- ToolStripItemEventArgs.cs
- PropertyRef.cs
- DurableOperationAttribute.cs
- MergeFilterQuery.cs
- PropertyInformation.cs
- FloaterParaClient.cs
- CompiledIdentityConstraint.cs
- DbResourceAllocator.cs
- HttpListenerRequestTraceRecord.cs
- DetailsView.cs
- ReadWriteSpinLock.cs
- SchemaConstraints.cs
- XPathParser.cs
- SizeValueSerializer.cs
- HtmlHead.cs
- X500Name.cs
- FastPropertyAccessor.cs
- Dynamic.cs
- BindingCollection.cs
- XmlKeywords.cs
- PropertyTab.cs
- StorageConditionPropertyMapping.cs
- XamlToRtfParser.cs
- ExpressionBindings.cs
- AmbientValueAttribute.cs
- ContextMenuStripActionList.cs
- MimeFormatExtensions.cs
- DrawTreeNodeEventArgs.cs
- EntityCollectionChangedParams.cs
- ProviderConnectionPoint.cs
- SizeLimitedCache.cs
- TimeSpanFormat.cs
- DataKey.cs
- bidPrivateBase.cs
- PageParser.cs
- PersistChildrenAttribute.cs
- CompensationDesigner.cs
- AppSettingsReader.cs
- DbParameterCollectionHelper.cs
- ModuleBuilder.cs
- FilteredDataSetHelper.cs
- RegexNode.cs
- ColumnMapVisitor.cs
- BitmapInitialize.cs
- RepeatBehaviorConverter.cs
- ActivationServices.cs
- IdentitySection.cs
- EntityContainerRelationshipSetEnd.cs
- COM2ExtendedUITypeEditor.cs
- DataServiceRequestOfT.cs
- SyntaxCheck.cs
- HighlightOverlayGlyph.cs
- LongSumAggregationOperator.cs
- FormViewUpdateEventArgs.cs
- SerializerDescriptor.cs
- CategoryEditor.cs
- ParameterSubsegment.cs
- CodeTypeMemberCollection.cs
- ListenerSessionConnection.cs
- LZCodec.cs
- DataGridViewHitTestInfo.cs
- Misc.cs
- Configuration.cs
- DomainConstraint.cs
- SchemaObjectWriter.cs
- TraceLevelHelper.cs
- FormatterServices.cs
- ImageMapEventArgs.cs
- ErrorEventArgs.cs
- ReplyChannelAcceptor.cs
- ActionFrame.cs
- WebPartEditorOkVerb.cs
- Storyboard.cs
- SchemaImporterExtensionElement.cs
- _DomainName.cs
- MessageQueueEnumerator.cs
- RequestCachePolicyConverter.cs
- WsrmMessageInfo.cs
- NullReferenceException.cs
- HttpCacheVary.cs
- PieceDirectory.cs