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 / DynamicResourceExtensionConverter.cs / 1 / 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
- Asn1IntegerConverter.cs
- DataGridColumnCollection.cs
- SoapInteropTypes.cs
- CodeArrayIndexerExpression.cs
- TrackingParticipant.cs
- FlagsAttribute.cs
- ListViewCommandEventArgs.cs
- UnmanagedBitmapWrapper.cs
- ValidationErrorEventArgs.cs
- NumericUpDownAcceleration.cs
- Expression.cs
- NativeMethodsCLR.cs
- AdornerLayer.cs
- IxmlLineInfo.cs
- BatchWriter.cs
- FileUtil.cs
- ResourceSetExpression.cs
- IntranetCredentialPolicy.cs
- WebBrowserSiteBase.cs
- CellPartitioner.cs
- ParseChildrenAsPropertiesAttribute.cs
- MultiTrigger.cs
- SamlDoNotCacheCondition.cs
- hresults.cs
- FloaterParagraph.cs
- CapabilitiesPattern.cs
- DataGridPageChangedEventArgs.cs
- BitArray.cs
- ConnectionStringSettings.cs
- SchemaNotation.cs
- WindowsListBox.cs
- ViewStateException.cs
- CodeAttributeArgument.cs
- formatstringdialog.cs
- SafeRightsManagementSessionHandle.cs
- DataGridViewCellCollection.cs
- BaseCodeDomTreeGenerator.cs
- IPHostEntry.cs
- SemanticResolver.cs
- DocumentAutomationPeer.cs
- ImplicitInputBrush.cs
- SimpleRecyclingCache.cs
- DesignerValidatorAdapter.cs
- MarginCollapsingState.cs
- OleDbEnumerator.cs
- Activator.cs
- HyperLinkColumn.cs
- metadatamappinghashervisitor.hashsourcebuilder.cs
- LocalizeDesigner.cs
- XmlElementAttributes.cs
- StreamReader.cs
- SqlCommand.cs
- StandardOleMarshalObject.cs
- ZipIOExtraField.cs
- DataSourceHelper.cs
- GridEntryCollection.cs
- ShaderRenderModeValidation.cs
- GenerateHelper.cs
- XmlSchemaRedefine.cs
- FontStyleConverter.cs
- InputElement.cs
- Hashtable.cs
- OdbcConnection.cs
- SchemaLookupTable.cs
- DbProviderServices.cs
- DataGridViewCellValidatingEventArgs.cs
- GroupItemAutomationPeer.cs
- EntityDataSourceConfigureObjectContext.cs
- SHA512CryptoServiceProvider.cs
- TypeConverterHelper.cs
- ZipIOFileItemStream.cs
- StylusDevice.cs
- AutomationElementCollection.cs
- XmlSerializerAssemblyAttribute.cs
- MessageDecoder.cs
- TemplateBuilder.cs
- EqualityComparer.cs
- DataTransferEventArgs.cs
- BitmapVisualManager.cs
- Event.cs
- Point.cs
- metadatamappinghashervisitor.cs
- EditorZone.cs
- EnumerableRowCollection.cs
- ConfigurationSectionGroupCollection.cs
- TableLayoutStyle.cs
- StyleConverter.cs
- ToolStripPanelRenderEventArgs.cs
- SymbolPair.cs
- RelativeSource.cs
- X509RawDataKeyIdentifierClause.cs
- Bold.cs
- MimeTypeMapper.cs
- DetailsViewDeleteEventArgs.cs
- CompilerParameters.cs
- shaperfactoryquerycacheentry.cs
- PropertyEmitter.cs
- MethodInfo.cs
- RtfToXamlLexer.cs
- TabItemWrapperAutomationPeer.cs