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
- basecomparevalidator.cs
- Accessors.cs
- HtmlListAdapter.cs
- UniqueIdentifierService.cs
- StringBuilder.cs
- Qualifier.cs
- ProfilePropertySettingsCollection.cs
- DatasetMethodGenerator.cs
- SqlException.cs
- TripleDESCryptoServiceProvider.cs
- TextEditorSelection.cs
- TypedElement.cs
- ConfigurationSettings.cs
- DataGridViewSelectedRowCollection.cs
- SplitterCancelEvent.cs
- ForwardPositionQuery.cs
- Mapping.cs
- ViewValidator.cs
- GlobalEventManager.cs
- ControlsConfig.cs
- TypeElement.cs
- RecognizerStateChangedEventArgs.cs
- GridViewRowEventArgs.cs
- ImageBrush.cs
- ObjectListSelectEventArgs.cs
- Triplet.cs
- EraserBehavior.cs
- SoapDocumentServiceAttribute.cs
- SrgsGrammarCompiler.cs
- EntityAdapter.cs
- XPathArrayIterator.cs
- WebPartZone.cs
- DateTimeOffsetStorage.cs
- DropAnimation.xaml.cs
- ConfigurationValues.cs
- ManualResetEvent.cs
- Schema.cs
- SolidColorBrush.cs
- OracleRowUpdatingEventArgs.cs
- CodeAccessSecurityEngine.cs
- CommunicationObjectManager.cs
- BmpBitmapDecoder.cs
- EpmSyndicationContentSerializer.cs
- DataBoundLiteralControl.cs
- WinInet.cs
- LocatorPartList.cs
- WindowsGraphics.cs
- StatusBarDrawItemEvent.cs
- ChtmlCommandAdapter.cs
- TypeBinaryExpression.cs
- XmlSchemaRedefine.cs
- VectorCollectionConverter.cs
- FieldNameLookup.cs
- PlaceHolder.cs
- SByteStorage.cs
- SmiMetaDataProperty.cs
- MobileControlBuilder.cs
- RemoteWebConfigurationHostServer.cs
- BrowsableAttribute.cs
- TextTreeInsertUndoUnit.cs
- UTF7Encoding.cs
- DynamicRenderer.cs
- Util.cs
- ButtonFieldBase.cs
- filewebrequest.cs
- WindowsIdentity.cs
- WebControl.cs
- ProxyFragment.cs
- ScriptResourceInfo.cs
- TreeNodeMouseHoverEvent.cs
- XmlSchemaSimpleContent.cs
- HttpFileCollection.cs
- DragCompletedEventArgs.cs
- XslAst.cs
- ReferentialConstraint.cs
- BinaryObjectInfo.cs
- XamlSerializerUtil.cs
- X509WindowsSecurityToken.cs
- SqlColumnizer.cs
- TextContainerChangeEventArgs.cs
- MatrixConverter.cs
- Emitter.cs
- TextRangeSerialization.cs
- ListBoxAutomationPeer.cs
- X509PeerCertificateAuthenticationElement.cs
- TdsEnums.cs
- SqlLiftIndependentRowExpressions.cs
- SqlConnectionStringBuilder.cs
- ListenerElementsCollection.cs
- UniformGrid.cs
- XslNumber.cs
- FolderBrowserDialog.cs
- SubclassTypeValidator.cs
- GetPageNumberCompletedEventArgs.cs
- NameValuePermission.cs
- FlowDocumentView.cs
- ScriptReference.cs
- PassportAuthenticationModule.cs
- NavigationPropertyAccessor.cs
- NetworkCredential.cs