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 / Markup / StaticExtensionConverter.cs / 1 / StaticExtensionConverter.cs
//------------------------------------------------------------------------ // // Microsoft Windows Client Platform // Copyright (C) Microsoft Corporation, 2005 // // File: StaticExtensionConverter.cs // // Contents: Converter to convert StaticExtensions to InstanceDescriptors // Created: 04/28/2005 [....] // //----------------------------------------------------------------------- using System; using System.ComponentModel; using System.ComponentModel.Design.Serialization; using System.Collections.Generic; using System.Text; using System.Security; namespace System.Windows.Markup { class StaticExtensionConverter : TypeConverter { public override bool CanConvertTo(ITypeDescriptorContext context, Type destinationType) { if (destinationType == typeof(InstanceDescriptor)) { return true; } return base.CanConvertTo(context, destinationType); } ////// Critical: calls InstanceDescriptor ctor which LinkDemands /// TreatAsSafe: can only make an InstanceDescriptor for StaticExtension, not an arbitrary class /// [SecurityCritical, SecurityTreatAsSafe] public override object ConvertTo(ITypeDescriptorContext context, System.Globalization.CultureInfo culture, object value, Type destinationType) { if (destinationType == typeof(InstanceDescriptor)) { StaticExtension staticExtension = value as StaticExtension; if (staticExtension == null) throw new ArgumentException(SR.Get(SRID.MustBeOfType, "value", "StaticExtension")); return new InstanceDescriptor(typeof(StaticExtension).GetConstructor(new Type[] { typeof(string) }), new object[] { staticExtension.Member }); } 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: StaticExtensionConverter.cs // // Contents: Converter to convert StaticExtensions to InstanceDescriptors // Created: 04/28/2005 [....] // //----------------------------------------------------------------------- using System; using System.ComponentModel; using System.ComponentModel.Design.Serialization; using System.Collections.Generic; using System.Text; using System.Security; namespace System.Windows.Markup { class StaticExtensionConverter : TypeConverter { public override bool CanConvertTo(ITypeDescriptorContext context, Type destinationType) { if (destinationType == typeof(InstanceDescriptor)) { return true; } return base.CanConvertTo(context, destinationType); } ////// Critical: calls InstanceDescriptor ctor which LinkDemands /// TreatAsSafe: can only make an InstanceDescriptor for StaticExtension, not an arbitrary class /// [SecurityCritical, SecurityTreatAsSafe] public override object ConvertTo(ITypeDescriptorContext context, System.Globalization.CultureInfo culture, object value, Type destinationType) { if (destinationType == typeof(InstanceDescriptor)) { StaticExtension staticExtension = value as StaticExtension; if (staticExtension == null) throw new ArgumentException(SR.Get(SRID.MustBeOfType, "value", "StaticExtension")); return new InstanceDescriptor(typeof(StaticExtension).GetConstructor(new Type[] { typeof(string) }), new object[] { staticExtension.Member }); } 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
- securestring.cs
- FilePrompt.cs
- SystemTcpStatistics.cs
- CodeExpressionCollection.cs
- MediaScriptCommandRoutedEventArgs.cs
- ObjectItemCachedAssemblyLoader.cs
- PageBuildProvider.cs
- Thickness.cs
- ImageUrlEditor.cs
- TextParagraph.cs
- PixelFormat.cs
- PartialCachingControl.cs
- SmiEventSink_Default.cs
- PermissionToken.cs
- TextBoxLine.cs
- ZoneButton.cs
- WinFormsUtils.cs
- AttributeUsageAttribute.cs
- NameSpaceExtractor.cs
- DataSourceExpression.cs
- RecordBuilder.cs
- PersonalizationStateInfo.cs
- EventsTab.cs
- DocumentApplication.cs
- FontSource.cs
- XamlBuildProvider.cs
- PropertyItem.cs
- ContentType.cs
- XamlToRtfWriter.cs
- Psha1DerivedKeyGenerator.cs
- HtmlInputImage.cs
- DataGridViewRowCollection.cs
- ScriptModule.cs
- MemberAssignmentAnalysis.cs
- MarshalDirectiveException.cs
- SelectionRangeConverter.cs
- XmlBinaryReaderSession.cs
- ImageMap.cs
- DisposableCollectionWrapper.cs
- BindingCompleteEventArgs.cs
- XmlSignatureProperties.cs
- DataExpression.cs
- PhysicalAddress.cs
- NamespaceTable.cs
- StackOverflowException.cs
- WSDualHttpBinding.cs
- ResourcePart.cs
- JournalEntryStack.cs
- typedescriptorpermission.cs
- RouteData.cs
- IPAddressCollection.cs
- FindCriteriaCD1.cs
- PublishLicense.cs
- HttpException.cs
- InheritanceRules.cs
- ManifestBasedResourceGroveler.cs
- CqlQuery.cs
- Version.cs
- WindowAutomationPeer.cs
- CmsInterop.cs
- VirtualDirectoryMapping.cs
- XmlHelper.cs
- SHA512Managed.cs
- Types.cs
- HtmlInputImage.cs
- Point3DAnimationUsingKeyFrames.cs
- __Filters.cs
- ContractSearchPattern.cs
- ResourcePermissionBaseEntry.cs
- DateTimeFormat.cs
- RequestTimeoutManager.cs
- DependencyPropertyHelper.cs
- DefaultTextStore.cs
- StrokeNodeEnumerator.cs
- FontCollection.cs
- CodeThrowExceptionStatement.cs
- ClusterSafeNativeMethods.cs
- XmlBindingWorker.cs
- SolidColorBrush.cs
- DiscreteKeyFrames.cs
- WebBrowser.cs
- CodeVariableReferenceExpression.cs
- TextDecorationCollection.cs
- WriteTimeStream.cs
- OdbcDataReader.cs
- WebServiceHandlerFactory.cs
- StateMachineSubscriptionManager.cs
- GAC.cs
- SqlDataSourceCommandEventArgs.cs
- CheckBoxList.cs
- ServiceBusyException.cs
- KeyEventArgs.cs
- CacheForPrimitiveTypes.cs
- EntityViewContainer.cs
- SByteStorage.cs
- AsymmetricSignatureFormatter.cs
- ProgressiveCrcCalculatingStream.cs
- Environment.cs
- NeutralResourcesLanguageAttribute.cs
- RecordsAffectedEventArgs.cs