Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / DynamicResourceExtensionConverter.cs / 1305600 / DynamicResourceExtensionConverter.cs
//------------------------------------------------------------------------ // // Microsoft Windows Client Platform // Copyright (C) Microsoft Corporation, 2005 // // File: ElementItem.cs // // Contents: Implements a converter to an instance descriptor for // DynamicResourceExtension // // Created: 04/28/2005 [....] // //----------------------------------------------------------------------- using System; using System.ComponentModel; using System.ComponentModel.Design.Serialization; using System.Collections; using System.Security; using System.Text; namespace System.Windows { ////// Type converter to inform the serialization system how to construct a DynamicResourceExtension from /// an instance. It reports that ResourceKey should be used as the first parameter to the constructor. /// public class DynamicResourceExtensionConverter: TypeConverter { ////// True if converting to an instance descriptor /// public override bool CanConvertTo(ITypeDescriptorContext context, Type destinationType) { if (destinationType == typeof(InstanceDescriptor)) { return true; } return base.CanConvertTo(context, destinationType); } ////// Converts to an instance descriptor /// ////// Critical: calls InstanceDescriptor ctor which LinkDemands /// PublicOK: can only make an InstanceDescriptor for DynamicResourceExtension, not an arbitrary class /// [SecurityCritical] public override object ConvertTo(ITypeDescriptorContext context, System.Globalization.CultureInfo culture, object value, Type destinationType) { if (destinationType == typeof(InstanceDescriptor)) { if(value == null) throw new ArgumentNullException("value"); DynamicResourceExtension dynamicResource = value as DynamicResourceExtension; if (dynamicResource == null) throw new ArgumentException(SR.Get(SRID.MustBeOfType, "value", "DynamicResourceExtension"), "value"); return new InstanceDescriptor(typeof(DynamicResourceExtension).GetConstructor(new Type[] { typeof(object) }), new object[] { dynamicResource.ResourceKey } ); } 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 // DynamicResourceExtension // // Created: 04/28/2005 [....] // //----------------------------------------------------------------------- using System; using System.ComponentModel; using System.ComponentModel.Design.Serialization; using System.Collections; using System.Security; using System.Text; namespace System.Windows { ////// Type converter to inform the serialization system how to construct a DynamicResourceExtension from /// an instance. It reports that ResourceKey should be used as the first parameter to the constructor. /// public class DynamicResourceExtensionConverter: TypeConverter { ////// True if converting to an instance descriptor /// public override bool CanConvertTo(ITypeDescriptorContext context, Type destinationType) { if (destinationType == typeof(InstanceDescriptor)) { return true; } return base.CanConvertTo(context, destinationType); } ////// Converts to an instance descriptor /// ////// Critical: calls InstanceDescriptor ctor which LinkDemands /// PublicOK: can only make an InstanceDescriptor for DynamicResourceExtension, not an arbitrary class /// [SecurityCritical] public override object ConvertTo(ITypeDescriptorContext context, System.Globalization.CultureInfo culture, object value, Type destinationType) { if (destinationType == typeof(InstanceDescriptor)) { if(value == null) throw new ArgumentNullException("value"); DynamicResourceExtension dynamicResource = value as DynamicResourceExtension; if (dynamicResource == null) throw new ArgumentException(SR.Get(SRID.MustBeOfType, "value", "DynamicResourceExtension"), "value"); return new InstanceDescriptor(typeof(DynamicResourceExtension).GetConstructor(new Type[] { typeof(object) }), new object[] { dynamicResource.ResourceKey } ); } 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
- PeerNode.cs
- OdbcConnection.cs
- _DigestClient.cs
- Quack.cs
- ValueProviderWrapper.cs
- ServiceProviders.cs
- Win32Native.cs
- AppDomainFactory.cs
- WebPartConnectionCollection.cs
- MarkupCompiler.cs
- PropertyEntry.cs
- VerificationException.cs
- ButtonStandardAdapter.cs
- SessionStateItemCollection.cs
- BoundingRectTracker.cs
- ViewCellSlot.cs
- HtmlTernaryTree.cs
- LoginStatusDesigner.cs
- LambdaReference.cs
- MenuItemBinding.cs
- formatter.cs
- Metafile.cs
- HwndSubclass.cs
- SubstitutionResponseElement.cs
- GeneralTransform3DGroup.cs
- Crc32.cs
- Polygon.cs
- CodeRemoveEventStatement.cs
- WmlListAdapter.cs
- HttpCacheParams.cs
- ActivityExecutorOperation.cs
- CodeDelegateInvokeExpression.cs
- DeflateEmulationStream.cs
- EllipticalNodeOperations.cs
- WindowInteractionStateTracker.cs
- StyleBamlTreeBuilder.cs
- SafeNativeMethods.cs
- InvalidTimeZoneException.cs
- XPathException.cs
- CfgArc.cs
- COM2ComponentEditor.cs
- DataListCommandEventArgs.cs
- EncodedStreamFactory.cs
- ToolStripScrollButton.cs
- X509Certificate2Collection.cs
- ContainerAction.cs
- ObjectHelper.cs
- DataGridRow.cs
- InputLanguageEventArgs.cs
- FamilyMap.cs
- ConfigXmlElement.cs
- RequestDescription.cs
- NativeMethodsCLR.cs
- HierarchicalDataSourceIDConverter.cs
- TTSEngineTypes.cs
- MachineKeySection.cs
- Atom10FormatterFactory.cs
- TriState.cs
- ScopelessEnumAttribute.cs
- Timer.cs
- SqlDataSourceDesigner.cs
- DeviceFiltersSection.cs
- AuthenticationConfig.cs
- Base64Encoding.cs
- CannotUnloadAppDomainException.cs
- EventWaitHandleSecurity.cs
- ProgressBar.cs
- PropertyConverter.cs
- LicenseException.cs
- StringValidatorAttribute.cs
- BlurBitmapEffect.cs
- UInt16Converter.cs
- MediaSystem.cs
- SafeBitVector32.cs
- HttpHeaderCollection.cs
- GroupItemAutomationPeer.cs
- DBSqlParserTable.cs
- JsonFormatReaderGenerator.cs
- WindowsClientCredential.cs
- PolicyChain.cs
- ChainedAsyncResult.cs
- DataMember.cs
- TextParagraphProperties.cs
- WindowsSlider.cs
- HttpVersion.cs
- AuthenticatedStream.cs
- EncoderNLS.cs
- CompileXomlTask.cs
- X509ChainPolicy.cs
- WebPartCancelEventArgs.cs
- QilReference.cs
- WindowsHyperlink.cs
- WorkflowTerminatedException.cs
- QuotedPrintableStream.cs
- ProviderUtil.cs
- RadioButton.cs
- TemplateComponentConnector.cs
- EpmContentDeSerializer.cs
- UrlMappingCollection.cs
- CornerRadius.cs