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
- XmlConvert.cs
- TypeReference.cs
- Attributes.cs
- BamlResourceContent.cs
- ZipIOCentralDirectoryDigitalSignature.cs
- _SingleItemRequestCache.cs
- MatrixUtil.cs
- WaitHandle.cs
- RowCache.cs
- brushes.cs
- SelectionListComponentEditor.cs
- DbUpdateCommandTree.cs
- CodeSubDirectoriesCollection.cs
- PromptEventArgs.cs
- PropertyTabChangedEvent.cs
- PrincipalPermission.cs
- BinaryObjectInfo.cs
- StateMachine.cs
- Pair.cs
- FormViewInsertEventArgs.cs
- ContentOnlyMessage.cs
- SmiEventSink.cs
- log.cs
- WebReferenceCollection.cs
- ConnectionInterfaceCollection.cs
- RawStylusInputCustomDataList.cs
- XsltConvert.cs
- WorkerRequest.cs
- SQLMembershipProvider.cs
- EnlistmentTraceIdentifier.cs
- JoinElimination.cs
- DiscriminatorMap.cs
- NativeCppClassAttribute.cs
- TreeNode.cs
- HtmlEmptyTagControlBuilder.cs
- input.cs
- ContractHandle.cs
- FileRegion.cs
- XamlParser.cs
- DocumentSchemaValidator.cs
- MultipartContentParser.cs
- FileDialogPermission.cs
- StandardOleMarshalObject.cs
- LinqTreeNodeEvaluator.cs
- CommandManager.cs
- VisualStyleRenderer.cs
- PathGradientBrush.cs
- _HTTPDateParse.cs
- HttpPostedFile.cs
- ISCIIEncoding.cs
- CompiledIdentityConstraint.cs
- cookiecollection.cs
- BitmapEffectDrawing.cs
- SessionEndingEventArgs.cs
- xdrvalidator.cs
- TogglePattern.cs
- StylusEditingBehavior.cs
- IERequestCache.cs
- PageClientProxyGenerator.cs
- PropertyEntry.cs
- XmlAttributeOverrides.cs
- WrappedReader.cs
- DateTimeFormatInfo.cs
- IsolatedStorageFilePermission.cs
- ConfigurationPropertyAttribute.cs
- XPathNodeInfoAtom.cs
- MetadataArtifactLoaderXmlReaderWrapper.cs
- SplitContainerDesigner.cs
- ColorConvertedBitmap.cs
- UrlMappingsModule.cs
- WebPartTracker.cs
- Classification.cs
- TextReader.cs
- DataGridColumn.cs
- PersonalizationStateInfo.cs
- RightsManagementPermission.cs
- MenuEventArgs.cs
- PageParser.cs
- DictionaryEditChange.cs
- EmptyEnumerator.cs
- FunctionQuery.cs
- ItemsPresenter.cs
- InputGestureCollection.cs
- ToggleButton.cs
- MetadataSource.cs
- MenuBase.cs
- TextBox.cs
- IconHelper.cs
- ScopelessEnumAttribute.cs
- RefreshEventArgs.cs
- peernodeimplementation.cs
- Vector3DIndependentAnimationStorage.cs
- StringAnimationBase.cs
- XmlAttributes.cs
- DataGridViewDataErrorEventArgs.cs
- SQLInt64Storage.cs
- TrustLevelCollection.cs
- ApplicationServiceHelper.cs
- MultiSelectRootGridEntry.cs
- MimeReturn.cs