Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / wpf / src / Framework / System / Windows / TemplateBindingExtension.cs / 1 / 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))] 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. /****************************************************************************\ * * 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))] 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
- AutomationPropertyInfo.cs
- StringFreezingAttribute.cs
- HtmlForm.cs
- MediaTimeline.cs
- ActivationArguments.cs
- connectionpool.cs
- TreeViewImageGenerator.cs
- ReflectionServiceProvider.cs
- TemplateBindingExtension.cs
- DetailsViewRow.cs
- ValueTypeFixupInfo.cs
- ResourceDisplayNameAttribute.cs
- CryptoApi.cs
- PropertyContainer.cs
- HtmlGenericControl.cs
- ColumnClickEvent.cs
- HttpWriter.cs
- EUCJPEncoding.cs
- coordinator.cs
- AudioFileOut.cs
- Vertex.cs
- EncodingDataItem.cs
- CanonicalXml.cs
- GlobalEventManager.cs
- IntSumAggregationOperator.cs
- XmlResolver.cs
- AssemblyName.cs
- WarningException.cs
- BStrWrapper.cs
- DefaultObjectMappingItemCollection.cs
- ValidationEventArgs.cs
- securitycriticaldata.cs
- BindToObject.cs
- Error.cs
- C14NUtil.cs
- SqlTopReducer.cs
- StringComparer.cs
- XmlSchemaIdentityConstraint.cs
- DocumentPageHost.cs
- MultidimensionalArrayItemReference.cs
- ApplicationSettingsBase.cs
- HttpCookieCollection.cs
- DataGridItemEventArgs.cs
- XmlWellformedWriter.cs
- SqlCaseSimplifier.cs
- Parser.cs
- XhtmlBasicControlAdapter.cs
- PropertyEntry.cs
- ActiveXContainer.cs
- DataGridCellItemAutomationPeer.cs
- DesignTimeResourceProviderFactoryAttribute.cs
- AssertSection.cs
- StyleModeStack.cs
- CalendarAutoFormat.cs
- safex509handles.cs
- CacheMode.cs
- WebPartConnectionsCloseVerb.cs
- PrivateFontCollection.cs
- EdmType.cs
- SqlCacheDependencySection.cs
- ApplicationHost.cs
- Crc32.cs
- ByteConverter.cs
- arc.cs
- PerformanceCounterScope.cs
- TextEditorParagraphs.cs
- Missing.cs
- StylusDevice.cs
- ListViewSelectEventArgs.cs
- Exceptions.cs
- ApplicationManager.cs
- EntityCollectionChangedParams.cs
- PublisherIdentityPermission.cs
- SettingsSection.cs
- EntitySet.cs
- COM2ExtendedBrowsingHandler.cs
- QuerySetOp.cs
- ResXDataNode.cs
- UIElementHelper.cs
- DrawingServices.cs
- WebPartZoneCollection.cs
- MsmqTransportBindingElement.cs
- ContentType.cs
- TreePrinter.cs
- XamlPointCollectionSerializer.cs
- ResXResourceWriter.cs
- CorruptStoreException.cs
- DataGridViewRowHeaderCell.cs
- PropertyValueUIItem.cs
- CaseKeyBox.xaml.cs
- DynamicValidatorEventArgs.cs
- CryptoApi.cs
- ConstraintManager.cs
- TrackingProfile.cs
- BamlMapTable.cs
- DbBuffer.cs
- ReachVisualSerializerAsync.cs
- ContextConfiguration.cs
- DataStorage.cs
- ScriptingProfileServiceSection.cs