Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / 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
- WebRequestModuleElementCollection.cs
- BindingContext.cs
- DebugView.cs
- CodeSnippetCompileUnit.cs
- PermissionRequestEvidence.cs
- TimeZone.cs
- PageThemeParser.cs
- WorkflowServiceAttributes.cs
- RightsManagementEncryptedStream.cs
- InvalidDataException.cs
- TemplateBindingExpressionConverter.cs
- StoragePropertyMapping.cs
- TextBox.cs
- NullableConverter.cs
- ImageList.cs
- ContextMarshalException.cs
- DataSpaceManager.cs
- ValueOfAction.cs
- SqlXmlStorage.cs
- TypeUnloadedException.cs
- ApplicationSettingsBase.cs
- FlowDocumentPaginator.cs
- XmlLanguageConverter.cs
- Int32Storage.cs
- PingReply.cs
- EntityDataSourceReferenceGroup.cs
- PolyQuadraticBezierSegment.cs
- connectionpool.cs
- PeerApplicationLaunchInfo.cs
- Page.cs
- DurableInstanceContextProvider.cs
- NavigationWindowAutomationPeer.cs
- IdentityManager.cs
- PersonalizationStateInfoCollection.cs
- FieldTemplateUserControl.cs
- Barrier.cs
- StylusPointPropertyInfoDefaults.cs
- AccessViolationException.cs
- XmlCollation.cs
- PerformanceCounter.cs
- SessionSwitchEventArgs.cs
- _NtlmClient.cs
- EventToken.cs
- PathSegmentCollection.cs
- LoginView.cs
- DrawingContextDrawingContextWalker.cs
- AuthenticationConfig.cs
- ProxyGenerationError.cs
- _ConnectOverlappedAsyncResult.cs
- PieceDirectory.cs
- Image.cs
- FileIOPermission.cs
- IssuedTokensHeader.cs
- MissingManifestResourceException.cs
- MethodAccessException.cs
- WorkflowLayouts.cs
- ValueQuery.cs
- EventRouteFactory.cs
- UITypeEditors.cs
- SingleKeyFrameCollection.cs
- TypeUsage.cs
- StorageMappingFragment.cs
- DataTable.cs
- ZipPackagePart.cs
- RelationshipWrapper.cs
- KeyedHashAlgorithm.cs
- ColorIndependentAnimationStorage.cs
- UserPersonalizationStateInfo.cs
- ViewGenResults.cs
- XmlWellformedWriter.cs
- BitmapEffect.cs
- EventLogException.cs
- QueryStringParameter.cs
- initElementDictionary.cs
- TextDecorationCollectionConverter.cs
- ItemCollection.cs
- _HeaderInfoTable.cs
- TreeViewItemAutomationPeer.cs
- ContextStack.cs
- MatrixCamera.cs
- MatrixAnimationUsingPath.cs
- sqlnorm.cs
- ArraySegment.cs
- ValidationHelpers.cs
- FamilyMap.cs
- ColumnMapCopier.cs
- UpdateProgress.cs
- OracleColumn.cs
- Rijndael.cs
- VectorCollectionConverter.cs
- TypeReference.cs
- Speller.cs
- FormViewModeEventArgs.cs
- SRef.cs
- RowToFieldTransformer.cs
- GenericsInstances.cs
- WebPartZoneCollection.cs
- BitmapSizeOptions.cs
- MemberMemberBinding.cs
- ExtensibleClassFactory.cs