Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / 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
- SQLInt32Storage.cs
- CompoundFileStreamReference.cs
- CatalogZone.cs
- CLSCompliantAttribute.cs
- MatchAllMessageFilter.cs
- LinkButton.cs
- Trace.cs
- PrinterResolution.cs
- TreeNode.cs
- ProfileModule.cs
- DictionaryKeyPropertyAttribute.cs
- MergeFailedEvent.cs
- IncrementalHitTester.cs
- FormViewDeleteEventArgs.cs
- OutputCacheModule.cs
- ToolboxItemImageConverter.cs
- WebColorConverter.cs
- invalidudtexception.cs
- ActivitySurrogateSelector.cs
- TitleStyle.cs
- EditorOptionAttribute.cs
- ResolveMatchesApril2005.cs
- QuestionEventArgs.cs
- PartialCachingAttribute.cs
- DataGridSortingEventArgs.cs
- _SSPIWrapper.cs
- DbMetaDataCollectionNames.cs
- CommonGetThemePartSize.cs
- DataControlReference.cs
- SiteMapPath.cs
- _AutoWebProxyScriptHelper.cs
- SymmetricKey.cs
- StructuredType.cs
- XmlDictionaryWriter.cs
- CanonicalXml.cs
- LicenseManager.cs
- SqlGenericUtil.cs
- ExpressionTable.cs
- BufferModesCollection.cs
- StreamWriter.cs
- PackageProperties.cs
- EditorOptionAttribute.cs
- PrivilegedConfigurationManager.cs
- ParsedAttributeCollection.cs
- FastEncoder.cs
- HitTestDrawingContextWalker.cs
- PathFigureCollection.cs
- OleDbCommandBuilder.cs
- FieldMetadata.cs
- OleDbConnection.cs
- HelpFileFileNameEditor.cs
- Quaternion.cs
- objectquery_tresulttype.cs
- WrappedReader.cs
- MessagePropertyVariants.cs
- ListViewAutomationPeer.cs
- XmlQueryTypeFactory.cs
- HyperLinkField.cs
- PersistChildrenAttribute.cs
- DataGridViewTextBoxColumn.cs
- DataSourceXmlTextReader.cs
- PeerObject.cs
- RelationalExpressions.cs
- QuaternionAnimationUsingKeyFrames.cs
- QueryStringHandler.cs
- LinqDataSourceStatusEventArgs.cs
- ToolStripSettings.cs
- ServicePoint.cs
- GridViewSortEventArgs.cs
- Environment.cs
- ExtentKey.cs
- XamlPointCollectionSerializer.cs
- X509Certificate2.cs
- PtsHost.cs
- ProvideValueServiceProvider.cs
- SR.cs
- pingexception.cs
- CompilationLock.cs
- GenericEnumerator.cs
- IisTraceWebEventProvider.cs
- ArrayWithOffset.cs
- DeploymentSectionCache.cs
- ProcessManager.cs
- XmlDataSourceView.cs
- PropertyDescriptors.cs
- DefaultBinder.cs
- TreeBuilderBamlTranslator.cs
- ModifyActivitiesPropertyDescriptor.cs
- HotSpot.cs
- MetadataProperty.cs
- HandleValueEditor.cs
- MailDefinition.cs
- DictionaryItemsCollection.cs
- Compiler.cs
- RouteParser.cs
- RightsManagementEncryptionTransform.cs
- _Rfc2616CacheValidators.cs
- SetIterators.cs
- ColorConvertedBitmapExtension.cs
- ToolBarButtonClickEvent.cs