Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / wpf / src / 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 [....] // //----------------------------------------------------------------------- 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
- ParameterBinding.cs
- PropertyEmitterBase.cs
- CheckedListBox.cs
- oledbconnectionstring.cs
- MatrixTransform3D.cs
- JoinGraph.cs
- ISO2022Encoding.cs
- DataErrorValidationRule.cs
- DodSequenceMerge.cs
- SetterBaseCollection.cs
- Image.cs
- NoPersistProperty.cs
- ResourceSet.cs
- metadatamappinghashervisitor.cs
- SerTrace.cs
- BypassElementCollection.cs
- ExceptionUtil.cs
- HostExecutionContextManager.cs
- PackageDigitalSignature.cs
- CaseInsensitiveOrdinalStringComparer.cs
- ExpandableObjectConverter.cs
- PriorityBindingExpression.cs
- XhtmlBasicPhoneCallAdapter.cs
- MultiBinding.cs
- CodeNamespaceImport.cs
- IIS7WorkerRequest.cs
- TogglePatternIdentifiers.cs
- PropertyKey.cs
- XAMLParseException.cs
- SettingsSection.cs
- SystemDiagnosticsSection.cs
- ApplicationId.cs
- SudsParser.cs
- CompareValidator.cs
- SqlCachedBuffer.cs
- XmlKeywords.cs
- ZipIOCentralDirectoryBlock.cs
- OleDbDataAdapter.cs
- CollectionChangeEventArgs.cs
- TextServicesContext.cs
- recordstatescratchpad.cs
- WebSysDisplayNameAttribute.cs
- DocumentOrderComparer.cs
- AddToCollection.cs
- ApplicationDirectory.cs
- IssuedTokenParametersElement.cs
- MetabaseServerConfig.cs
- XmlSignificantWhitespace.cs
- DbProviderServices.cs
- Hashtable.cs
- ClientConfigurationHost.cs
- GeometryModel3D.cs
- CipherData.cs
- invalidudtexception.cs
- PostBackOptions.cs
- TreeViewImageIndexConverter.cs
- PostBackOptions.cs
- QualifiedCellIdBoolean.cs
- XamlTypeMapper.cs
- RTTypeWrapper.cs
- Suspend.cs
- ToolBarButtonClickEvent.cs
- isolationinterop.cs
- __ConsoleStream.cs
- RegistryPermission.cs
- InputQueueChannelAcceptor.cs
- GenerateScriptTypeAttribute.cs
- ListControlBoundActionList.cs
- XXXInfos.cs
- SchemaNamespaceManager.cs
- GenericsNotImplementedException.cs
- externdll.cs
- StaticFileHandler.cs
- WorkflowMarkupSerializationProvider.cs
- CodeIndexerExpression.cs
- ObjectListFieldsPage.cs
- ConstraintStruct.cs
- OpenTypeCommon.cs
- InstanceNameConverter.cs
- TrackingRecord.cs
- Sentence.cs
- MetadataImporterQuotas.cs
- SelectionRange.cs
- DrawingAttributeSerializer.cs
- WebPartCloseVerb.cs
- DependencyPropertyChangedEventArgs.cs
- ConsoleKeyInfo.cs
- IndependentAnimationStorage.cs
- MappingItemCollection.cs
- MemberRestriction.cs
- SerialReceived.cs
- OneWayBindingElement.cs
- PropertyInformation.cs
- GetPageNumberCompletedEventArgs.cs
- DataMemberListEditor.cs
- WindowsBrush.cs
- ImageSourceValueSerializer.cs
- SymmetricAlgorithm.cs
- OdbcParameterCollection.cs
- BitStream.cs