Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / 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 chuckj // //----------------------------------------------------------------------- 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
- HttpListenerElement.cs
- ByteRangeDownloader.cs
- IndentedWriter.cs
- GroupItem.cs
- XmlSchemaObject.cs
- Peer.cs
- SHA256.cs
- CqlErrorHelper.cs
- Baml2006ReaderFrame.cs
- PipelineDeploymentState.cs
- httpserverutility.cs
- OleDbRowUpdatingEvent.cs
- PersonalizationStateInfoCollection.cs
- FigureHelper.cs
- HelpProvider.cs
- PeerNameResolver.cs
- arabicshape.cs
- DefaultHttpHandler.cs
- TrackBar.cs
- AudioException.cs
- DbConnectionPoolCounters.cs
- MetadataUtilsSmi.cs
- TextEffectCollection.cs
- DataSetMappper.cs
- ConfigurationPropertyCollection.cs
- XmlTextReader.cs
- QilDataSource.cs
- InkSerializer.cs
- DesignParameter.cs
- Floater.cs
- ServiceNameElement.cs
- ConfigXmlText.cs
- MultiTrigger.cs
- ListBase.cs
- ManagedWndProcTracker.cs
- MeasurementDCInfo.cs
- DataContractSerializerSection.cs
- GeneratedContractType.cs
- SymbolMethod.cs
- ApplicationFileCodeDomTreeGenerator.cs
- IListConverters.cs
- ListBoxAutomationPeer.cs
- HTMLTextWriter.cs
- ProcessHostConfigUtils.cs
- ListViewGroupConverter.cs
- Rect.cs
- Ticks.cs
- AxisAngleRotation3D.cs
- DynamicRenderer.cs
- MsmqTransportSecurity.cs
- DigitalSignatureProvider.cs
- OutgoingWebRequestContext.cs
- SinglePageViewer.cs
- StoragePropertyMapping.cs
- _ListenerAsyncResult.cs
- DefaultValidator.cs
- ControlValuePropertyAttribute.cs
- RawStylusInput.cs
- TemplateBaseAction.cs
- VectorKeyFrameCollection.cs
- ScrollBarRenderer.cs
- safemediahandle.cs
- NegationPusher.cs
- SafeCryptHandles.cs
- EventDescriptorCollection.cs
- COM2ComponentEditor.cs
- ELinqQueryState.cs
- ReadOnlyPropertyMetadata.cs
- Function.cs
- CommonXSendMessage.cs
- Message.cs
- ReflectEventDescriptor.cs
- UnsafeNativeMethods.cs
- DefaultBindingPropertyAttribute.cs
- JsonSerializer.cs
- EnvelopedSignatureTransform.cs
- SQLByteStorage.cs
- FormsAuthentication.cs
- PerformanceCounterPermissionEntry.cs
- AutomationEvent.cs
- SqlDependencyListener.cs
- DataColumn.cs
- PropertyGridEditorPart.cs
- KeyedCollection.cs
- __Filters.cs
- DiscriminatorMap.cs
- BinaryConverter.cs
- StateDesigner.CommentLayoutGlyph.cs
- ListViewTableCell.cs
- IApplicationTrustManager.cs
- RegexCode.cs
- WebPartActionVerb.cs
- Exceptions.cs
- NavigationPropertyEmitter.cs
- DependentList.cs
- _NtlmClient.cs
- TableStyle.cs
- EventlogProvider.cs
- DefaultMemberAttribute.cs
- Size.cs