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
- RayHitTestParameters.cs
- BookmarkList.cs
- Number.cs
- DesignerLoader.cs
- PropertyValueUIItem.cs
- Effect.cs
- wgx_render.cs
- PrimitiveType.cs
- XmlDataContract.cs
- FixedSOMTextRun.cs
- ControlCollection.cs
- OdbcPermission.cs
- SqlParameterCollection.cs
- StorageComplexTypeMapping.cs
- SourceInterpreter.cs
- PageThemeBuildProvider.cs
- ListViewEditEventArgs.cs
- InputBindingCollection.cs
- DesignerAutoFormat.cs
- WorkflowFileItem.cs
- CodeActivity.cs
- ObjectStateFormatter.cs
- CachedPathData.cs
- SecurityKeyType.cs
- DataBindingHandlerAttribute.cs
- VolatileEnlistmentState.cs
- CaseCqlBlock.cs
- FormatSettings.cs
- BrushValueSerializer.cs
- NullRuntimeConfig.cs
- ObjectTag.cs
- PlanCompilerUtil.cs
- SafeIUnknown.cs
- RightsController.cs
- ApplicationFileCodeDomTreeGenerator.cs
- ILGenerator.cs
- MailAddressCollection.cs
- ActionMismatchAddressingException.cs
- SizeIndependentAnimationStorage.cs
- WindowsImpersonationContext.cs
- OracleTransaction.cs
- UriExt.cs
- SparseMemoryStream.cs
- AppSecurityManager.cs
- ConversionHelper.cs
- AutomationPattern.cs
- RunInstallerAttribute.cs
- AssociationTypeEmitter.cs
- MatrixAnimationUsingPath.cs
- Roles.cs
- PageVisual.cs
- SecurityContextCookieSerializer.cs
- RequestCacheEntry.cs
- FontUnitConverter.cs
- StringInfo.cs
- Polyline.cs
- PlanCompiler.cs
- WindowsFormsHostAutomationPeer.cs
- ContextBase.cs
- SvcMapFile.cs
- DbSourceCommand.cs
- RealProxy.cs
- XmlValidatingReader.cs
- DbModificationClause.cs
- SemanticResolver.cs
- TranslateTransform3D.cs
- Geometry3D.cs
- WorkflowInstanceUnhandledExceptionRecord.cs
- DoubleStorage.cs
- MenuItemCollection.cs
- DeobfuscatingStream.cs
- Translator.cs
- AuthorizationRuleCollection.cs
- __Error.cs
- PropertySourceInfo.cs
- GridViewRowPresenterBase.cs
- ConfigXmlWhitespace.cs
- Base64Stream.cs
- Error.cs
- AsyncOperationManager.cs
- Menu.cs
- ClipboardData.cs
- EdmSchemaAttribute.cs
- counter.cs
- DisplayNameAttribute.cs
- PhysicalAddress.cs
- FixedSOMSemanticBox.cs
- OdbcInfoMessageEvent.cs
- MapPathBasedVirtualPathProvider.cs
- TemplatedAdorner.cs
- PartitionerStatic.cs
- NonBatchDirectoryCompiler.cs
- SQLInt32.cs
- peernodestatemanager.cs
- FolderNameEditor.cs
- PerfService.cs
- HttpFileCollection.cs
- ScriptResourceAttribute.cs
- XsltException.cs
- StringSource.cs