Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / wpf / src / Framework / System / Windows / TemplateBindingExtensionConverter.cs / 1 / TemplateBindingExtensionConverter.cs
//------------------------------------------------------------------------ // // Microsoft Windows Client Platform // Copyright (C) Microsoft Corporation, 2005 // // File: ElementItem.cs // // Contents: Implements a converter to an instance descriptor for // TemplateBindingExtension // // Created: 04/28/2005 [....] // //----------------------------------------------------------------------- using System; using System.ComponentModel; using System.ComponentModel.Design.Serialization; using System.Globalization; using System.Windows; using System.Security; namespace System.Windows { ////// Type converter to inform the serialization system how to construct a TemplateBindingExtension from /// an instance. It reports that Property should be used as the first parameter to the constructor. /// public class TemplateBindingExtensionConverter : TypeConverter { ////// Returns true if converting to an InstanceDescriptor /// /// /// ///public override bool CanConvertTo(ITypeDescriptorContext context, Type destinationType) { if (destinationType == typeof(InstanceDescriptor)) { return true; } return base.CanConvertTo(context, destinationType); } /// /// Converts to an InstanceDescriptor /// ////// Critical: calls InstanceDescriptor ctor which LinkDemands /// PublicOK: can only make an InstanceDescriptor for TemplateBindingExtension, not an arbitrary class /// [SecurityCritical] public override object ConvertTo(ITypeDescriptorContext context, CultureInfo culture, object value, Type destinationType) { if (destinationType == typeof(InstanceDescriptor)) { if(value == null) throw new ArgumentNullException("value"); TemplateBindingExtension templateBinding = value as TemplateBindingExtension; if(templateBinding == null) throw new ArgumentException(SR.Get(SRID.MustBeOfType, "value", "TemplateBindingExtension"), "value"); return new InstanceDescriptor(typeof(TemplateBindingExtension).GetConstructor(new Type[] { typeof(DependencyProperty) }), new object[] { templateBinding.Property }); } 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 // TemplateBindingExtension // // Created: 04/28/2005 [....] // //----------------------------------------------------------------------- using System; using System.ComponentModel; using System.ComponentModel.Design.Serialization; using System.Globalization; using System.Windows; using System.Security; namespace System.Windows { ////// Type converter to inform the serialization system how to construct a TemplateBindingExtension from /// an instance. It reports that Property should be used as the first parameter to the constructor. /// public class TemplateBindingExtensionConverter : TypeConverter { ////// Returns true if converting to an InstanceDescriptor /// /// /// ///public override bool CanConvertTo(ITypeDescriptorContext context, Type destinationType) { if (destinationType == typeof(InstanceDescriptor)) { return true; } return base.CanConvertTo(context, destinationType); } /// /// Converts to an InstanceDescriptor /// ////// Critical: calls InstanceDescriptor ctor which LinkDemands /// PublicOK: can only make an InstanceDescriptor for TemplateBindingExtension, not an arbitrary class /// [SecurityCritical] public override object ConvertTo(ITypeDescriptorContext context, CultureInfo culture, object value, Type destinationType) { if (destinationType == typeof(InstanceDescriptor)) { if(value == null) throw new ArgumentNullException("value"); TemplateBindingExtension templateBinding = value as TemplateBindingExtension; if(templateBinding == null) throw new ArgumentException(SR.Get(SRID.MustBeOfType, "value", "TemplateBindingExtension"), "value"); return new InstanceDescriptor(typeof(TemplateBindingExtension).GetConstructor(new Type[] { typeof(DependencyProperty) }), new object[] { templateBinding.Property }); } 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
- SBCSCodePageEncoding.cs
- OpCodes.cs
- MissingMemberException.cs
- RuntimeConfig.cs
- XmlCodeExporter.cs
- JsonReaderDelegator.cs
- Page.cs
- MemberExpressionHelper.cs
- SHA1CryptoServiceProvider.cs
- ResourcesBuildProvider.cs
- IdentityNotMappedException.cs
- IntSecurity.cs
- ResourcePermissionBase.cs
- DocumentApplicationDocumentViewer.cs
- BatchWriter.cs
- HtmlContainerControl.cs
- HuffCodec.cs
- ScaleTransform.cs
- DataRow.cs
- CustomAttributeBuilder.cs
- HttpProtocolImporter.cs
- MailWebEventProvider.cs
- UnknownBitmapDecoder.cs
- WarningException.cs
- SiblingIterators.cs
- WindowsProgressbar.cs
- TypeDelegator.cs
- DynamicRendererThreadManager.cs
- DataGridAutoGeneratingColumnEventArgs.cs
- StyleModeStack.cs
- HttpListenerResponse.cs
- CollectionEditorDialog.cs
- ISSmlParser.cs
- ObjectAnimationBase.cs
- Pair.cs
- SizeConverter.cs
- WCFModelStrings.Designer.cs
- Viewport3DVisual.cs
- HashSetEqualityComparer.cs
- SignatureHelper.cs
- AppearanceEditorPart.cs
- SystemIPGlobalStatistics.cs
- _NestedMultipleAsyncResult.cs
- EditingCoordinator.cs
- TemplatePropertyEntry.cs
- DrawingAttributesDefaultValueFactory.cs
- IisTraceWebEventProvider.cs
- TableSectionStyle.cs
- KeyGesture.cs
- HtmlInputControl.cs
- PeerNameRegistration.cs
- Fonts.cs
- EventLog.cs
- ObservableCollection.cs
- WebEventTraceProvider.cs
- RelationshipEnd.cs
- x509utils.cs
- AsyncContentLoadedEventArgs.cs
- CryptoSession.cs
- ValidationError.cs
- HashMembershipCondition.cs
- SqlEnums.cs
- NetTcpBindingElement.cs
- AllMembershipCondition.cs
- HttpCookie.cs
- FilterQuery.cs
- ICollection.cs
- _emptywebproxy.cs
- InkCanvasSelection.cs
- IPEndPointCollection.cs
- HostProtectionPermission.cs
- ValidatedMobileControlConverter.cs
- MapPathBasedVirtualPathProvider.cs
- PerfService.cs
- BinaryFormatter.cs
- TransformCryptoHandle.cs
- DragCompletedEventArgs.cs
- ParagraphVisual.cs
- SharedPersonalizationStateInfo.cs
- UnSafeCharBuffer.cs
- UnmanagedMemoryStreamWrapper.cs
- FontEditor.cs
- MaterialCollection.cs
- DynamicValidatorEventArgs.cs
- Parser.cs
- DesignerRegion.cs
- BindingListCollectionView.cs
- SecurityHelper.cs
- UserCancellationException.cs
- WebGetAttribute.cs
- DocumentAutomationPeer.cs
- Permission.cs
- PolyLineSegmentFigureLogic.cs
- DataAdapter.cs
- TextDataBindingHandler.cs
- SafeEventLogWriteHandle.cs
- ExternalCalls.cs
- XmlSchemaImporter.cs
- ServiceManager.cs
- RawStylusSystemGestureInputReport.cs