Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / TemplateBindingExtension.cs / 1305600 / TemplateBindingExtension.cs
/****************************************************************************\ * * File: TemplateBindingExtension.cs * * Class for Xaml markup extension for TemplateBinds that * can be set on the nodes of the Template VisualTree. * * Copyright (C) 2005 by Microsoft Corporation. All rights reserved. * \***************************************************************************/ using System; using System.ComponentModel; using System.Windows; using System.Windows.Data; using System.Windows.Markup; namespace System.Windows { ////// Class for Xaml markup extension for TemplateBindings that /// can be set on the nodes of the Template VisualTree. /// [TypeConverter(typeof(TemplateBindingExtensionConverter))] [MarkupExtensionReturnType(typeof(Object))] public class TemplateBindingExtension : MarkupExtension { ////// Constructor that takes no parameters /// public TemplateBindingExtension() { } ////// Constructor that takes the resource key that this is a static reference to. /// public TemplateBindingExtension( DependencyProperty property) { if (property != null) { _property = property; } else { throw new ArgumentNullException("property"); } } ////// Return an object that should be set on the targetObject's targetProperty /// for this markup extension. For TemplateBindingExtension, this is the object found in /// a resource dictionary in the current parent chain that is keyed by ResourceKey /// /// ServiceProvider that can be queried for services. ////// The object to set on this property. /// public override object ProvideValue(IServiceProvider serviceProvider) { if (Property == null) { throw new InvalidOperationException(SR.Get(SRID.MarkupExtensionProperty)); } return new TemplateBindingExpression(this); } ////// Property we are binding to /// [ConstructorArgument("property")] public DependencyProperty Property { get { return _property; } set { if (value == null) { throw new ArgumentNullException("value"); } _property = value; } } ////// ValueConverter to interpose between the source and target properties /// [DefaultValue(null)] public IValueConverter Converter { get { return _converter; } set { if (value == null) { throw new ArgumentNullException("value"); } _converter = value; } } ////// ConverterParameter we are binding to /// [DefaultValue(null)] public object ConverterParameter { get { return _parameter; } set { _parameter = value; } } private DependencyProperty _property; private IValueConverter _converter; private object _parameter; } } // 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
- DiscriminatorMap.cs
- PermissionRequestEvidence.cs
- RenderOptions.cs
- WebPartConnectionsConnectVerb.cs
- LockedBorderGlyph.cs
- IISUnsafeMethods.cs
- DocumentReference.cs
- LinearGradientBrush.cs
- BuildTopDownAttribute.cs
- OrderByQueryOptionExpression.cs
- MetadataSerializer.cs
- XmlIlVisitor.cs
- InvokePatternIdentifiers.cs
- DataBindingExpressionBuilder.cs
- BulletDecorator.cs
- SqlServer2KCompatibilityCheck.cs
- HatchBrush.cs
- RegexCaptureCollection.cs
- SqlTopReducer.cs
- HttpServerProtocol.cs
- CodeCompileUnit.cs
- InstanceDataCollectionCollection.cs
- ToolStripRendererSwitcher.cs
- DbProviderServices.cs
- TimeSpan.cs
- SamlDoNotCacheCondition.cs
- IfJoinedCondition.cs
- Expression.DebuggerProxy.cs
- DiagnosticTrace.cs
- SimpleWebHandlerParser.cs
- StorageRoot.cs
- CryptoApi.cs
- Int32Animation.cs
- ProgressiveCrcCalculatingStream.cs
- XPathMessageContext.cs
- Transform.cs
- AnnotationHelper.cs
- PackageDigitalSignatureManager.cs
- Debugger.cs
- WebControlAdapter.cs
- AlternateView.cs
- CallTemplateAction.cs
- AssemblyAttributesGoHere.cs
- DurationConverter.cs
- QuaternionRotation3D.cs
- TileBrush.cs
- NameValueConfigurationCollection.cs
- DataGridViewBindingCompleteEventArgs.cs
- FloaterParaClient.cs
- CryptographicAttribute.cs
- RadioButton.cs
- SyntaxCheck.cs
- TransactionOptions.cs
- PkcsMisc.cs
- DbConnectionPool.cs
- FixedBufferAttribute.cs
- CommandHelpers.cs
- DocumentSequence.cs
- XamlPathDataSerializer.cs
- URLEditor.cs
- SqlRewriteScalarSubqueries.cs
- DrawListViewSubItemEventArgs.cs
- Stack.cs
- ProfileGroupSettings.cs
- DetailsViewRow.cs
- ProgressBar.cs
- adornercollection.cs
- ModelUIElement3D.cs
- TreeIterator.cs
- BigInt.cs
- Translator.cs
- ComboBoxDesigner.cs
- ServiceErrorHandler.cs
- XmlSchemaObject.cs
- SecurityManager.cs
- TypeSource.cs
- TimeSpanMinutesOrInfiniteConverter.cs
- SafePEFileHandle.cs
- webproxy.cs
- PersonalizationProvider.cs
- ItemList.cs
- WebScriptServiceHostFactory.cs
- DbMetaDataCollectionNames.cs
- ReadOnlyCollection.cs
- UniqueTransportManagerRegistration.cs
- RSAPKCS1SignatureDeformatter.cs
- TextTreeFixupNode.cs
- MatrixValueSerializer.cs
- LineBreakRecord.cs
- MediaPlayer.cs
- LicenseException.cs
- login.cs
- BinaryNode.cs
- DocComment.cs
- PropertyEmitter.cs
- ManagedCodeMarkers.cs
- TextDecorationLocationValidation.cs
- AsyncOperationManager.cs
- TransportSecurityHelpers.cs
- SchemaNotation.cs