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 / Markup / StaticExtensionConverter.cs / 1 / StaticExtensionConverter.cs
//------------------------------------------------------------------------
//
// Microsoft Windows Client Platform
// Copyright (C) Microsoft Corporation, 2005
//
// File: StaticExtensionConverter.cs
//
// Contents: Converter to convert StaticExtensions to InstanceDescriptors
// Created: 04/28/2005 [....]
//
//-----------------------------------------------------------------------
using System;
using System.ComponentModel;
using System.ComponentModel.Design.Serialization;
using System.Collections.Generic;
using System.Text;
using System.Security;
namespace System.Windows.Markup
{
class StaticExtensionConverter : TypeConverter
{
public override bool CanConvertTo(ITypeDescriptorContext context, Type destinationType)
{
if (destinationType == typeof(InstanceDescriptor))
{
return true;
}
return base.CanConvertTo(context, destinationType);
}
///
/// Critical: calls InstanceDescriptor ctor which LinkDemands
/// TreatAsSafe: can only make an InstanceDescriptor for StaticExtension, not an arbitrary class
///
[SecurityCritical, SecurityTreatAsSafe]
public override object ConvertTo(ITypeDescriptorContext context, System.Globalization.CultureInfo culture, object value, Type destinationType)
{
if (destinationType == typeof(InstanceDescriptor))
{
StaticExtension staticExtension = value as StaticExtension;
if (staticExtension == null)
throw new ArgumentException(SR.Get(SRID.MustBeOfType, "value", "StaticExtension"));
return new InstanceDescriptor(typeof(StaticExtension).GetConstructor(new Type[] { typeof(string) }),
new object[] { staticExtension.Member });
}
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: StaticExtensionConverter.cs
//
// Contents: Converter to convert StaticExtensions to InstanceDescriptors
// Created: 04/28/2005 [....]
//
//-----------------------------------------------------------------------
using System;
using System.ComponentModel;
using System.ComponentModel.Design.Serialization;
using System.Collections.Generic;
using System.Text;
using System.Security;
namespace System.Windows.Markup
{
class StaticExtensionConverter : TypeConverter
{
public override bool CanConvertTo(ITypeDescriptorContext context, Type destinationType)
{
if (destinationType == typeof(InstanceDescriptor))
{
return true;
}
return base.CanConvertTo(context, destinationType);
}
///
/// Critical: calls InstanceDescriptor ctor which LinkDemands
/// TreatAsSafe: can only make an InstanceDescriptor for StaticExtension, not an arbitrary class
///
[SecurityCritical, SecurityTreatAsSafe]
public override object ConvertTo(ITypeDescriptorContext context, System.Globalization.CultureInfo culture, object value, Type destinationType)
{
if (destinationType == typeof(InstanceDescriptor))
{
StaticExtension staticExtension = value as StaticExtension;
if (staticExtension == null)
throw new ArgumentException(SR.Get(SRID.MustBeOfType, "value", "StaticExtension"));
return new InstanceDescriptor(typeof(StaticExtension).GetConstructor(new Type[] { typeof(string) }),
new object[] { staticExtension.Member });
}
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
- TextEditorSelection.cs
- ListSortDescription.cs
- CreatingCookieEventArgs.cs
- CommunicationObjectManager.cs
- webeventbuffer.cs
- XhtmlMobileTextWriter.cs
- DataGridRow.cs
- Padding.cs
- Polyline.cs
- PerfCounterSection.cs
- GuidConverter.cs
- SerializationSectionGroup.cs
- SqlProfileProvider.cs
- ObjectParameter.cs
- GifBitmapEncoder.cs
- SourceSwitch.cs
- XmlTextReaderImplHelpers.cs
- LogPolicy.cs
- BindingExpressionUncommonField.cs
- LeftCellWrapper.cs
- FixedSOMFixedBlock.cs
- RenderDataDrawingContext.cs
- Registration.cs
- CodePrimitiveExpression.cs
- PasswordValidationException.cs
- MobileControlBuilder.cs
- CodeMemberMethod.cs
- ArrangedElementCollection.cs
- CheckPair.cs
- IndexOutOfRangeException.cs
- AsnEncodedData.cs
- TableCellAutomationPeer.cs
- TPLETWProvider.cs
- CollectionsUtil.cs
- PropertyOverridesTypeEditor.cs
- CommandBindingCollection.cs
- PropertyGridView.cs
- JpegBitmapDecoder.cs
- ScaleTransform3D.cs
- CompilerErrorCollection.cs
- DropShadowBitmapEffect.cs
- ExitEventArgs.cs
- MatrixAnimationUsingKeyFrames.cs
- EventLogPermissionAttribute.cs
- XmlName.cs
- AutoGeneratedFieldProperties.cs
- DataGridState.cs
- InstanceKey.cs
- WebAdminConfigurationHelper.cs
- MediaPlayerState.cs
- ADMembershipUser.cs
- XdrBuilder.cs
- XmlNodeReader.cs
- HTTPNotFoundHandler.cs
- SoapExtensionTypeElement.cs
- TextRange.cs
- X509SubjectKeyIdentifierClause.cs
- DocumentXPathNavigator.cs
- GetImportFileNameRequest.cs
- KerberosTicketHashIdentifierClause.cs
- TypeResolvingOptionsAttribute.cs
- List.cs
- IconHelper.cs
- TreeNodeBindingCollection.cs
- Geometry.cs
- EntitySqlQueryCacheKey.cs
- DESCryptoServiceProvider.cs
- COMException.cs
- TypeHelper.cs
- TableCell.cs
- XmlValueConverter.cs
- DetailsViewInsertedEventArgs.cs
- ObjectQuery_EntitySqlExtensions.cs
- DesignerAdRotatorAdapter.cs
- ToolStripItemImageRenderEventArgs.cs
- HttpCookiesSection.cs
- SiteMapNodeItem.cs
- ApplyImportsAction.cs
- StorageConditionPropertyMapping.cs
- ColorAnimationUsingKeyFrames.cs
- XamlInt32CollectionSerializer.cs
- GenericPrincipal.cs
- AttributeCollection.cs
- UrlRoutingHandler.cs
- XmlIgnoreAttribute.cs
- SqlWriter.cs
- Composition.cs
- DomainUpDown.cs
- MultipleViewPattern.cs
- DataStreams.cs
- DrawListViewSubItemEventArgs.cs
- WeakHashtable.cs
- CharAnimationUsingKeyFrames.cs
- TextBox.cs
- DialogWindow.cs
- PassportAuthenticationModule.cs
- securestring.cs
- StickyNoteAnnotations.cs
- FileDialogPermission.cs
- ResponseStream.cs