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
- SmtpMail.cs
- SmtpNetworkElement.cs
- EllipseGeometry.cs
- AddInControllerImpl.cs
- EditingScope.cs
- PackageDigitalSignature.cs
- CompilationUtil.cs
- ByteBufferPool.cs
- RoleExceptions.cs
- HandleCollector.cs
- TemplateBuilder.cs
- MSAAEventDispatcher.cs
- TreeNodeStyle.cs
- ObjectRef.cs
- UnsafeNativeMethods.cs
- FixedSOMContainer.cs
- Fonts.cs
- DrawItemEvent.cs
- ContainerControl.cs
- NetworkInformationException.cs
- BitmapEffectDrawingContent.cs
- EventTask.cs
- RedirectionProxy.cs
- PerformanceCounterPermission.cs
- Geometry.cs
- RemoteWebConfigurationHostStream.cs
- AmbientLight.cs
- RelationshipFixer.cs
- TextPattern.cs
- MetadataSet.cs
- PropertyTabAttribute.cs
- AuthorizationRuleCollection.cs
- EventLogSession.cs
- TemplateControlParser.cs
- LinqDataSourceHelper.cs
- GridViewEditEventArgs.cs
- WindowsToolbar.cs
- SystemWebCachingSectionGroup.cs
- ScriptingJsonSerializationSection.cs
- TriggerBase.cs
- DeploymentSection.cs
- DirectionalLight.cs
- ProviderUtil.cs
- ReadOnlyKeyedCollection.cs
- StrokeCollectionDefaultValueFactory.cs
- DBPropSet.cs
- ThumbAutomationPeer.cs
- ReliableMessagingHelpers.cs
- WmlImageAdapter.cs
- JsonQueryStringConverter.cs
- Regex.cs
- SimpleBitVector32.cs
- IconBitmapDecoder.cs
- ApplicationFileParser.cs
- TransformerConfigurationWizardBase.cs
- TypeUtil.cs
- CompilationUnit.cs
- ELinqQueryState.cs
- DropShadowBitmapEffect.cs
- DrawingVisualDrawingContext.cs
- XmlNode.cs
- DbConnectionOptions.cs
- XPathNavigator.cs
- ResolveInfo.cs
- SafeNativeMethods.cs
- XmlSchemaDocumentation.cs
- ClosableStream.cs
- RequestNavigateEventArgs.cs
- Process.cs
- MetadataExchangeClient.cs
- XmlElementAttributes.cs
- AVElementHelper.cs
- ReaderOutput.cs
- SqlDataSourceStatusEventArgs.cs
- CaseInsensitiveHashCodeProvider.cs
- X509Utils.cs
- ParallelEnumerableWrapper.cs
- WaitForChangedResult.cs
- StructuredCompositeActivityDesigner.cs
- ListSortDescriptionCollection.cs
- SynchronizationContext.cs
- ReflectionHelper.cs
- CircleEase.cs
- UInt64Converter.cs
- GridToolTip.cs
- StyleCollection.cs
- VoiceChangeEventArgs.cs
- IdnElement.cs
- FormParameter.cs
- EncoderFallback.cs
- MatrixConverter.cs
- ConfigurationSectionGroup.cs
- SiteMapNodeItem.cs
- StyleCollectionEditor.cs
- SiteMapHierarchicalDataSourceView.cs
- ListenerSessionConnection.cs
- CatalogZoneBase.cs
- RetrieveVirtualItemEventArgs.cs
- XamlFigureLengthSerializer.cs
- SqlTransaction.cs