Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / 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
- SmiConnection.cs
- WmpBitmapDecoder.cs
- DBAsyncResult.cs
- VerificationException.cs
- MessageDescriptionCollection.cs
- complextypematerializer.cs
- GiveFeedbackEventArgs.cs
- ParsedRoute.cs
- EventProvider.cs
- CodeTypeDeclaration.cs
- WebServiceAttribute.cs
- ExpressionVisitorHelpers.cs
- SQLBytes.cs
- httpstaticobjectscollection.cs
- HostedNamedPipeTransportManager.cs
- _ContextAwareResult.cs
- x509utils.cs
- DirectoryObjectSecurity.cs
- MultipleViewProviderWrapper.cs
- HttpResponse.cs
- SecureConversationVersion.cs
- AsnEncodedData.cs
- XsltArgumentList.cs
- InputBinder.cs
- DataGridItemCollection.cs
- TreeIterator.cs
- WebUtil.cs
- RoleManagerEventArgs.cs
- QfeChecker.cs
- Utilities.cs
- SecurityAlgorithmSuite.cs
- TextServicesLoader.cs
- TaskResultSetter.cs
- DynamicDiscoSearcher.cs
- ConsumerConnectionPointCollection.cs
- PenThread.cs
- CombinedGeometry.cs
- Currency.cs
- HostingEnvironmentWrapper.cs
- RegularExpressionValidator.cs
- ValidateNames.cs
- GeometryValueSerializer.cs
- Resources.Designer.cs
- PointAnimation.cs
- ByteStorage.cs
- DataGridViewRowHeightInfoPushedEventArgs.cs
- Style.cs
- WebPartConnectionsCloseVerb.cs
- WeakReferenceEnumerator.cs
- _OverlappedAsyncResult.cs
- ClientBuildManagerCallback.cs
- CustomErrorsSection.cs
- DiagnosticsConfiguration.cs
- ScriptDescriptor.cs
- TdsParserSafeHandles.cs
- ISAPIWorkerRequest.cs
- SBCSCodePageEncoding.cs
- StringBlob.cs
- COM2Enum.cs
- CachedPathData.cs
- LateBoundBitmapDecoder.cs
- NetCodeGroup.cs
- CallId.cs
- TraceLog.cs
- ProfileEventArgs.cs
- DataList.cs
- RijndaelManagedTransform.cs
- DesignTable.cs
- CanonicalFontFamilyReference.cs
- WebPartRestoreVerb.cs
- x509utils.cs
- NameValueConfigurationCollection.cs
- SkewTransform.cs
- KeyGesture.cs
- Accessors.cs
- GroupBox.cs
- SelectionItemPatternIdentifiers.cs
- Timer.cs
- DockPatternIdentifiers.cs
- InsufficientMemoryException.cs
- _CacheStreams.cs
- UpdatePanelTriggerCollection.cs
- PropertyTabAttribute.cs
- QualificationDataAttribute.cs
- ProxyHelper.cs
- ChangePasswordDesigner.cs
- ViewBox.cs
- IncrementalReadDecoders.cs
- WriteTimeStream.cs
- Calendar.cs
- SpecialFolderEnumConverter.cs
- ObfuscateAssemblyAttribute.cs
- AccessedThroughPropertyAttribute.cs
- XmlSchemaParticle.cs
- ViewStateModeByIdAttribute.cs
- FormViewModeEventArgs.cs
- NumberFormatInfo.cs
- SoapTransportImporter.cs
- DataGridViewBand.cs
- sqlnorm.cs