Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Framework / System / Windows / TemplateBindingExtensionConverter.cs / 1 / TemplateBindingExtensionConverter.cs
//------------------------------------------------------------------------ // // Microsoft Windows Client Platform // Copyright (C) Microsoft Corporation, 2005 // // File: ElementItem.cs // // Contents: Implements a converter to an instance descriptor for // TemplateBindingExtension // // Created: 04/28/2005 chuckj // //----------------------------------------------------------------------- using System; using System.ComponentModel; using System.ComponentModel.Design.Serialization; using System.Globalization; using System.Windows; using System.Security; namespace System.Windows { ////// Type converter to inform the serialization system how to construct a TemplateBindingExtension from /// an instance. It reports that Property should be used as the first parameter to the constructor. /// public class TemplateBindingExtensionConverter : TypeConverter { ////// Returns true if converting to an InstanceDescriptor /// /// /// ///public override bool CanConvertTo(ITypeDescriptorContext context, Type destinationType) { if (destinationType == typeof(InstanceDescriptor)) { return true; } return base.CanConvertTo(context, destinationType); } /// /// Converts to an InstanceDescriptor /// ////// Critical: calls InstanceDescriptor ctor which LinkDemands /// PublicOK: can only make an InstanceDescriptor for TemplateBindingExtension, not an arbitrary class /// [SecurityCritical] public override object ConvertTo(ITypeDescriptorContext context, CultureInfo culture, object value, Type destinationType) { if (destinationType == typeof(InstanceDescriptor)) { if(value == null) throw new ArgumentNullException("value"); TemplateBindingExtension templateBinding = value as TemplateBindingExtension; if(templateBinding == null) throw new ArgumentException(SR.Get(SRID.MustBeOfType, "value", "TemplateBindingExtension"), "value"); return new InstanceDescriptor(typeof(TemplateBindingExtension).GetConstructor(new Type[] { typeof(DependencyProperty) }), new object[] { templateBinding.Property }); } return base.ConvertTo(context, culture, value, destinationType); } } } // 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
- mediapermission.cs
- MultipleViewPatternIdentifiers.cs
- IOThreadScheduler.cs
- FixedPageProcessor.cs
- CompilerError.cs
- XsdDateTime.cs
- GenericTypeParameterBuilder.cs
- EmbeddedMailObjectsCollection.cs
- TypeSource.cs
- InvalidAsynchronousStateException.cs
- OletxTransactionHeader.cs
- ObjectDataSourceStatusEventArgs.cs
- ServiceTimeoutsElement.cs
- SolidBrush.cs
- SystemInfo.cs
- AtomContentProperty.cs
- Variant.cs
- SystemIPInterfaceStatistics.cs
- RegexTree.cs
- EmissiveMaterial.cs
- LicenseException.cs
- Exceptions.cs
- CacheMode.cs
- QilPatternVisitor.cs
- RawStylusActions.cs
- CrossContextChannel.cs
- FlowLayoutSettings.cs
- EntityDataSourceContextCreatingEventArgs.cs
- CodeObject.cs
- DataTableTypeConverter.cs
- XsltArgumentList.cs
- SettingsContext.cs
- ConstructorArgumentAttribute.cs
- FtpCachePolicyElement.cs
- RoleGroupCollectionEditor.cs
- RadioButton.cs
- ImageMapEventArgs.cs
- UniqueTransportManagerRegistration.cs
- EntityReference.cs
- ButtonChrome.cs
- RequestQueue.cs
- Group.cs
- XamlTreeBuilderBamlRecordWriter.cs
- MailBnfHelper.cs
- WindowsRichEdit.cs
- IUnknownConstantAttribute.cs
- XpsS0ValidatingLoader.cs
- TextTreePropertyUndoUnit.cs
- ZoneIdentityPermission.cs
- SourceElementsCollection.cs
- EventLogPermission.cs
- Maps.cs
- FloatUtil.cs
- ResXResourceReader.cs
- PointCollection.cs
- AssertFilter.cs
- SimpleExpression.cs
- DataGridViewImageCell.cs
- ExpressionBuilderContext.cs
- XmlSchemaSimpleContent.cs
- FrameworkContentElement.cs
- FontEmbeddingManager.cs
- AutomationPropertyInfo.cs
- CharEnumerator.cs
- ZipIOCentralDirectoryDigitalSignature.cs
- ToolStripSettings.cs
- PointAnimationUsingPath.cs
- WinFormsUtils.cs
- XPathBuilder.cs
- TreeNodeCollection.cs
- PrimitiveCodeDomSerializer.cs
- EditorZone.cs
- UIElementIsland.cs
- MarkerProperties.cs
- Visitor.cs
- FastEncoderWindow.cs
- Binding.cs
- RIPEMD160Managed.cs
- Int32Storage.cs
- OLEDB_Enum.cs
- MissingFieldException.cs
- StorageScalarPropertyMapping.cs
- KnownBoxes.cs
- RepeaterItem.cs
- RegionInfo.cs
- OdbcStatementHandle.cs
- MimeBasePart.cs
- HybridDictionary.cs
- DotExpr.cs
- SiteMembershipCondition.cs
- ClientFormsIdentity.cs
- XmlSchemaAnnotation.cs
- SystemIcons.cs
- HwndHost.cs
- XamlReaderHelper.cs
- DocComment.cs
- Event.cs
- PageBreakRecord.cs
- CodeConditionStatement.cs
- ListView.cs