Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / TemplateBindingExtensionConverter.cs / 1305600 / 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 [....] // //----------------------------------------------------------------------- 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. //------------------------------------------------------------------------ // // 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 [....] // //----------------------------------------------------------------------- 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
- ReceiveParametersContent.cs
- _UriTypeConverter.cs
- OuterProxyWrapper.cs
- HttpHandlerActionCollection.cs
- ToolStripSplitStackLayout.cs
- AppSecurityManager.cs
- StringWriter.cs
- WebConfigurationHost.cs
- OrderPreservingSpoolingTask.cs
- StringDictionary.cs
- HitTestDrawingContextWalker.cs
- Type.cs
- CompModSwitches.cs
- ClientFormsIdentity.cs
- WebColorConverter.cs
- MultiDataTrigger.cs
- SettingsBindableAttribute.cs
- XmlHierarchyData.cs
- OrthographicCamera.cs
- ColorDialog.cs
- ScriptReferenceBase.cs
- Message.cs
- MaterialGroup.cs
- InfoCardCryptoHelper.cs
- LayoutInformation.cs
- DomainLiteralReader.cs
- InputProcessorProfilesLoader.cs
- CryptoApi.cs
- EventTrigger.cs
- ColorDialog.cs
- DrawListViewItemEventArgs.cs
- ModuleBuilder.cs
- SimpleHandlerBuildProvider.cs
- XmlRootAttribute.cs
- Permission.cs
- WindowsListViewGroupHelper.cs
- KeyFrames.cs
- ScrollableControl.cs
- ValidationHelper.cs
- Repeater.cs
- ReflectionTypeLoadException.cs
- FixedDocumentSequencePaginator.cs
- SqlDependencyUtils.cs
- CustomAttributeBuilder.cs
- ExpressionBindings.cs
- WSDualHttpBindingElement.cs
- WebScriptEnablingBehavior.cs
- SpellerHighlightLayer.cs
- BCLDebug.cs
- XmlDataProvider.cs
- LinqDataSourceSelectEventArgs.cs
- Bidi.cs
- XmlArrayItemAttributes.cs
- WebDisplayNameAttribute.cs
- DecoderReplacementFallback.cs
- RoleGroupCollection.cs
- ThaiBuddhistCalendar.cs
- ToolStripTextBox.cs
- CallTemplateAction.cs
- Pair.cs
- JsonServiceDocumentSerializer.cs
- DrawToolTipEventArgs.cs
- PropertyInformationCollection.cs
- DBSqlParserColumn.cs
- Memoizer.cs
- MdiWindowListItemConverter.cs
- FormatStringEditor.cs
- FileDialog_Vista_Interop.cs
- DuplicateWaitObjectException.cs
- WebBrowsableAttribute.cs
- NoneExcludedImageIndexConverter.cs
- NavigationCommands.cs
- ControlDesigner.cs
- AspNetSynchronizationContext.cs
- ListenerAdapterBase.cs
- XmlEventCache.cs
- PointLightBase.cs
- WindowsAuthenticationEventArgs.cs
- QuaternionConverter.cs
- MouseButton.cs
- RenderTargetBitmap.cs
- XsdDuration.cs
- HttpHandlerAction.cs
- SemaphoreSecurity.cs
- DrawingBrush.cs
- WebConfigurationHost.cs
- TextCompositionEventArgs.cs
- EncryptedPackageFilter.cs
- Adorner.cs
- WindowsFormsSectionHandler.cs
- SQLRoleProvider.cs
- XpsManager.cs
- ModelVisual3D.cs
- CharAnimationUsingKeyFrames.cs
- ConfigurationLocationCollection.cs
- WebPartConnectionsConfigureVerb.cs
- ProxyElement.cs
- ObjectPersistData.cs
- ConfigurationStrings.cs
- KeySpline.cs