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
- GridEntry.cs
- Cursor.cs
- Int16Animation.cs
- webeventbuffer.cs
- XmlSerializerSection.cs
- Socket.cs
- XmlElement.cs
- AsyncOperationManager.cs
- MutexSecurity.cs
- ParameterBinding.cs
- oledbmetadatacollectionnames.cs
- OpenFileDialog.cs
- ManagedIStream.cs
- EdmFunction.cs
- VScrollBar.cs
- PersonalizationStateInfoCollection.cs
- DropSource.cs
- ByteStreamBufferedMessageData.cs
- SchemaCollectionPreprocessor.cs
- ImportRequest.cs
- Freezable.cs
- ProfileGroupSettingsCollection.cs
- LexicalChunk.cs
- FixedSOMGroup.cs
- WebPartConnectionCollection.cs
- MetadataCache.cs
- EventLog.cs
- BackStopAuthenticationModule.cs
- ObjectDataSourceChooseMethodsPanel.cs
- GetMemberBinder.cs
- Enlistment.cs
- ListViewContainer.cs
- UnsafeNativeMethods.cs
- SimpleHandlerBuildProvider.cs
- BoundColumn.cs
- StateManagedCollection.cs
- HtmlControlPersistable.cs
- DataControlReferenceCollection.cs
- CharacterBufferReference.cs
- SoapIncludeAttribute.cs
- RedBlackList.cs
- Int32RectValueSerializer.cs
- ConfigurationValidatorAttribute.cs
- ListViewDeleteEventArgs.cs
- CommonProperties.cs
- CultureTableRecord.cs
- PersonalizationProviderHelper.cs
- XsltSettings.cs
- CodeTypeReferenceCollection.cs
- DispatcherProcessingDisabled.cs
- ClusterRegistryConfigurationProvider.cs
- XmlException.cs
- DispatcherHooks.cs
- OrderingExpression.cs
- PrimitiveSchema.cs
- FormsAuthenticationConfiguration.cs
- SafeNativeMethods.cs
- Dispatcher.cs
- WebPartDisplayMode.cs
- FileDialog_Vista_Interop.cs
- QuestionEventArgs.cs
- DataError.cs
- TimeEnumHelper.cs
- CopyAction.cs
- securitycriticaldata.cs
- MessageTransmitTraceRecord.cs
- ListViewGroupCollectionEditor.cs
- CryptoApi.cs
- EntityDataSourceDesignerHelper.cs
- Identity.cs
- ContractsBCL.cs
- BitmapFrameDecode.cs
- QilStrConcat.cs
- CapabilitiesRule.cs
- ExtentCqlBlock.cs
- JsonStringDataContract.cs
- ParameterCollection.cs
- ObjectQueryState.cs
- clipboard.cs
- BrowsableAttribute.cs
- ColorConvertedBitmapExtension.cs
- TargetInvocationException.cs
- WindowInteropHelper.cs
- ConfigurationSectionGroupCollection.cs
- ActivityTrace.cs
- RegexCompiler.cs
- documentsequencetextview.cs
- JoinSymbol.cs
- AppDomainManager.cs
- RpcAsyncResult.cs
- HtmlInputHidden.cs
- MatrixKeyFrameCollection.cs
- BulletChrome.cs
- OneOfConst.cs
- ASCIIEncoding.cs
- Constant.cs
- EntitySqlException.cs
- KeyManager.cs
- ADConnectionHelper.cs
- DesignerTransaction.cs