Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / 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
- NTAccount.cs
- EmissiveMaterial.cs
- LayoutTableCell.cs
- XPathNodePointer.cs
- Rfc2898DeriveBytes.cs
- RegexRunnerFactory.cs
- OLEDB_Util.cs
- BigIntegerStorage.cs
- ElementUtil.cs
- ScriptRegistrationManager.cs
- BlurBitmapEffect.cs
- Light.cs
- InfiniteTimeSpanConverter.cs
- ValueExpressions.cs
- ActivityCodeGenerator.cs
- SafeRightsManagementQueryHandle.cs
- NativeMethodsCLR.cs
- IssuedTokensHeader.cs
- LinkLabel.cs
- UriPrefixTable.cs
- TabControlEvent.cs
- XmlTextReaderImpl.cs
- HtmlInputPassword.cs
- PreparingEnlistment.cs
- FormViewCommandEventArgs.cs
- VerifyHashRequest.cs
- OrderedEnumerableRowCollection.cs
- CompareValidator.cs
- CacheAxisQuery.cs
- DataObjectMethodAttribute.cs
- RelatedCurrencyManager.cs
- DataGridViewBindingCompleteEventArgs.cs
- ObfuscationAttribute.cs
- CodeTypeMember.cs
- _LocalDataStoreMgr.cs
- MaskInputRejectedEventArgs.cs
- CookieParameter.cs
- TypeReference.cs
- AlternationConverter.cs
- DbUpdateCommandTree.cs
- StylusCaptureWithinProperty.cs
- SignatureSummaryDialog.cs
- LocalizationCodeDomSerializer.cs
- SortKey.cs
- IIS7WorkerRequest.cs
- DataConnectionHelper.cs
- _ConnectionGroup.cs
- SequenceQuery.cs
- WindowsAltTab.cs
- Type.cs
- PageBuildProvider.cs
- EdmComplexTypeAttribute.cs
- OrCondition.cs
- BitmapImage.cs
- HwndAppCommandInputProvider.cs
- CompilationLock.cs
- Point3DCollection.cs
- GlyphRun.cs
- HtmlContainerControl.cs
- SafeFindHandle.cs
- ValueChangedEventManager.cs
- WebPartUtil.cs
- CatalogZone.cs
- MaterialGroup.cs
- DrawingAttributesDefaultValueFactory.cs
- FormatterServicesNoSerializableCheck.cs
- ServicePointManager.cs
- ThicknessAnimationBase.cs
- LeaseManager.cs
- WizardPanelChangingEventArgs.cs
- LookupBindingPropertiesAttribute.cs
- SmtpSection.cs
- CultureSpecificStringDictionary.cs
- EdmRelationshipRoleAttribute.cs
- BitmapInitialize.cs
- ParameterElementCollection.cs
- DiagnosticsConfigurationHandler.cs
- SqlVisitor.cs
- NodeLabelEditEvent.cs
- TextEditorSelection.cs
- StyleSheet.cs
- DataGridColumn.cs
- NullableConverter.cs
- SocketInformation.cs
- CodeDirectoryCompiler.cs
- FileSystemEventArgs.cs
- PropertyRecord.cs
- ApplicationSecurityInfo.cs
- GroupStyle.cs
- OracleBoolean.cs
- DoWhileDesigner.xaml.cs
- EntityDataSourceEntityTypeFilterItem.cs
- DataGridColumnEventArgs.cs
- WebPartsSection.cs
- IdnElement.cs
- XmlEntityReference.cs
- IntellisenseTextBox.designer.cs
- SrgsOneOf.cs
- ServiceElementCollection.cs
- ProxyDataContractResolver.cs