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
- SerializationEventsCache.cs
- TraceLog.cs
- ContextMenuStripGroupCollection.cs
- DataStorage.cs
- SynchronizationLockException.cs
- XmlSchemaCollection.cs
- CompositeControl.cs
- ProgressBar.cs
- ConfigXmlWhitespace.cs
- RepeaterItem.cs
- SqlTransaction.cs
- UserControl.cs
- RuntimeArgumentHandle.cs
- ProcessModelInfo.cs
- ValidatorCollection.cs
- BridgeDataRecord.cs
- IntPtr.cs
- Certificate.cs
- SqlProfileProvider.cs
- URL.cs
- DependentList.cs
- SR.cs
- SystemInfo.cs
- FrameAutomationPeer.cs
- FacetValues.cs
- AdapterSwitches.cs
- Function.cs
- BaseCodeDomTreeGenerator.cs
- DataSpaceManager.cs
- ProfileGroupSettings.cs
- ReadOnlyDataSourceView.cs
- TreeNodeStyle.cs
- InvalidPipelineStoreException.cs
- LoginView.cs
- SystemUdpStatistics.cs
- XmlBindingWorker.cs
- RecordBuilder.cs
- DataGridViewAutoSizeColumnModeEventArgs.cs
- ContentFilePart.cs
- DataControlFieldCell.cs
- validationstate.cs
- ProtocolViolationException.cs
- Quaternion.cs
- ReflectEventDescriptor.cs
- EnumUnknown.cs
- ApplicationInterop.cs
- ReadOnlyCollectionBase.cs
- DesignTimeData.cs
- ProtocolsConfiguration.cs
- KeyValueInternalCollection.cs
- LinearKeyFrames.cs
- GroupedContextMenuStrip.cs
- WmlListAdapter.cs
- ScriptControlManager.cs
- MonitorWrapper.cs
- RoleServiceManager.cs
- ConfigurationPermission.cs
- TargetFrameworkAttribute.cs
- XmlSchemaException.cs
- RawUIStateInputReport.cs
- MimeTypePropertyAttribute.cs
- ManipulationCompletedEventArgs.cs
- Helpers.cs
- FormatException.cs
- ApplicationGesture.cs
- SQLConvert.cs
- TransformCollection.cs
- Version.cs
- DbDeleteCommandTree.cs
- ListViewItemCollectionEditor.cs
- DrawingAttributes.cs
- AlphabetConverter.cs
- XmlAttributes.cs
- StringDictionary.cs
- ACE.cs
- BitSet.cs
- DataGrid.cs
- SQLInt16.cs
- FunctionMappingTranslator.cs
- FontNameEditor.cs
- ProcessThread.cs
- TextTreeDeleteContentUndoUnit.cs
- Transform3DGroup.cs
- NestPullup.cs
- LogicalChannelCollection.cs
- StateMachine.cs
- _ConnectOverlappedAsyncResult.cs
- DescendentsWalker.cs
- WebServiceEnumData.cs
- EventRoute.cs
- Unit.cs
- XamlBrushSerializer.cs
- TreeNodeStyle.cs
- XpsThumbnail.cs
- KeyedPriorityQueue.cs
- OrderedEnumerableRowCollection.cs
- WindowsPen.cs
- FileUpload.cs
- SqlClientWrapperSmiStream.cs
- SqlDelegatedTransaction.cs