Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Base / System / Windows / DependencyPropertyKey.cs / 1305600 / 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
- DecoderReplacementFallback.cs
- UxThemeWrapper.cs
- ConditionalAttribute.cs
- XmlSchemaSimpleTypeList.cs
- SpeakProgressEventArgs.cs
- NumberFunctions.cs
- SHA256CryptoServiceProvider.cs
- TextStore.cs
- NetNamedPipeSecurityElement.cs
- PhysicalAddress.cs
- IndexingContentUnit.cs
- __FastResourceComparer.cs
- TextParagraphView.cs
- ProviderConnectionPoint.cs
- List.cs
- ObjectDataProvider.cs
- ListSortDescription.cs
- GACMembershipCondition.cs
- SynchronizedInputProviderWrapper.cs
- HostDesigntimeLicenseContext.cs
- XamlFilter.cs
- EntityPropertyMappingAttribute.cs
- JsonQNameDataContract.cs
- OracleParameterBinding.cs
- BlobPersonalizationState.cs
- NonParentingControl.cs
- ShaperBuffers.cs
- ContextProperty.cs
- SoapFaultCodes.cs
- RegionInfo.cs
- Int64Converter.cs
- DynamicRendererThreadManager.cs
- ItemsControl.cs
- SingleResultAttribute.cs
- CustomPopupPlacement.cs
- OptimalTextSource.cs
- CodeRemoveEventStatement.cs
- IResourceProvider.cs
- SequentialActivityDesigner.cs
- FileAuthorizationModule.cs
- BevelBitmapEffect.cs
- FormViewUpdatedEventArgs.cs
- MetadataArtifactLoader.cs
- DataPagerCommandEventArgs.cs
- TreeNodeStyleCollection.cs
- OleDbReferenceCollection.cs
- AuthorizationRuleCollection.cs
- DataTableTypeConverter.cs
- LineSegment.cs
- UDPClient.cs
- SubMenuStyle.cs
- InputLanguageSource.cs
- Subset.cs
- DataGridViewTextBoxColumn.cs
- NameValueFileSectionHandler.cs
- AssemblyCollection.cs
- Line.cs
- ThousandthOfEmRealPoints.cs
- IdleTimeoutMonitor.cs
- Conditional.cs
- UrlAuthorizationModule.cs
- DataSvcMapFile.cs
- CodeGenHelper.cs
- RowUpdatedEventArgs.cs
- XmlTextAttribute.cs
- XmlSchemaComplexContentRestriction.cs
- ComponentChangingEvent.cs
- UnsafeNativeMethodsMilCoreApi.cs
- AnnotationHelper.cs
- DataSourceControl.cs
- DrawingContextDrawingContextWalker.cs
- ProgressBarHighlightConverter.cs
- TextTreeObjectNode.cs
- XmlSchemaExternal.cs
- Item.cs
- SoapAttributeOverrides.cs
- InstanceView.cs
- TextEditorParagraphs.cs
- StrongNameMembershipCondition.cs
- ScrollChrome.cs
- SpeechSynthesizer.cs
- WebPartManagerInternals.cs
- Enum.cs
- UserPersonalizationStateInfo.cs
- DataGridViewTextBoxEditingControl.cs
- ToolStripDropDownClosingEventArgs.cs
- ListParaClient.cs
- VerbConverter.cs
- SqlStatistics.cs
- ZipIOEndOfCentralDirectoryBlock.cs
- PKCS1MaskGenerationMethod.cs
- PeerApplication.cs
- ViewCellSlot.cs
- CardSpacePolicyElement.cs
- JsonDeserializer.cs
- ResourceDescriptionAttribute.cs
- ContextMenuService.cs
- SerialPinChanges.cs
- StrokeRenderer.cs
- EdmEntityTypeAttribute.cs