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
- ExtendedProperty.cs
- VirtualPath.cs
- TreeViewImageIndexConverter.cs
- SafeNativeMethods.cs
- SimpleWebHandlerParser.cs
- OutputWindow.cs
- WeakReadOnlyCollection.cs
- DesignerVerbCollection.cs
- SmiXetterAccessMap.cs
- DrawingGroupDrawingContext.cs
- Intellisense.cs
- GifBitmapDecoder.cs
- complextypematerializer.cs
- ToolStripDropDownMenu.cs
- ProviderConnectionPoint.cs
- HostProtectionException.cs
- HttpResponse.cs
- FrameworkElement.cs
- StructuredType.cs
- MethodBuilderInstantiation.cs
- DataViewSetting.cs
- LinearGradientBrush.cs
- ChtmlTextWriter.cs
- TableItemPatternIdentifiers.cs
- DelegatingHeader.cs
- HtmlLinkAdapter.cs
- FontEmbeddingManager.cs
- DesignBindingPicker.cs
- SocketAddress.cs
- EventProxy.cs
- SafePEFileHandle.cs
- AddInDeploymentState.cs
- SendOperation.cs
- ObjectPersistData.cs
- MultiBinding.cs
- HttpException.cs
- BasicExpressionVisitor.cs
- COM2PropertyBuilderUITypeEditor.cs
- ValidatingPropertiesEventArgs.cs
- AttachedPropertyBrowsableAttribute.cs
- X509AsymmetricSecurityKey.cs
- CodeThrowExceptionStatement.cs
- RtType.cs
- ObjectDataSourceFilteringEventArgs.cs
- Container.cs
- XmlSchemaSimpleType.cs
- TextChangedEventArgs.cs
- AnnotationService.cs
- MouseGestureValueSerializer.cs
- ResourcePermissionBase.cs
- HelpProvider.cs
- DataGridViewAccessibleObject.cs
- DesigntimeLicenseContextSerializer.cs
- ToolStripDropDownClosedEventArgs.cs
- LinearGradientBrush.cs
- NotImplementedException.cs
- FormatConvertedBitmap.cs
- Reference.cs
- StringDictionary.cs
- RouteCollection.cs
- EastAsianLunisolarCalendar.cs
- TextContainer.cs
- GeometryDrawing.cs
- ToolStripLabel.cs
- EdmToObjectNamespaceMap.cs
- EmptyQuery.cs
- JoinQueryOperator.cs
- CustomWebEventKey.cs
- SoapInteropTypes.cs
- ObjectQueryState.cs
- SoapAttributeAttribute.cs
- UrlMapping.cs
- CompoundFileStreamReference.cs
- Tracer.cs
- DataBoundControlHelper.cs
- DetailsViewUpdateEventArgs.cs
- OdbcErrorCollection.cs
- GridViewEditEventArgs.cs
- DataGridTable.cs
- DataRowView.cs
- TrustLevel.cs
- Internal.cs
- XmlComment.cs
- WindowsListViewSubItem.cs
- BoolExpression.cs
- _ConnectOverlappedAsyncResult.cs
- ISFClipboardData.cs
- Composition.cs
- ArrayExtension.cs
- UserControlCodeDomTreeGenerator.cs
- XPathNodeHelper.cs
- ScriptResourceHandler.cs
- BinaryObjectInfo.cs
- AnnotationService.cs
- ClientUtils.cs
- HandleRef.cs
- EndPoint.cs
- MeshGeometry3D.cs
- ScrollItemProviderWrapper.cs
- EntitySqlException.cs