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
- CryptoKeySecurity.cs
- SoapObjectReader.cs
- StackSpiller.Bindings.cs
- DataGridViewAutoSizeColumnsModeEventArgs.cs
- Calendar.cs
- OrderPreservingSpoolingTask.cs
- BitmapEffectGeneralTransform.cs
- SchemaAttDef.cs
- HtmlElement.cs
- SqlNodeTypeOperators.cs
- MouseDevice.cs
- KnownBoxes.cs
- DbCommandTree.cs
- SQLInt16Storage.cs
- XPathMultyIterator.cs
- DictionaryGlobals.cs
- AttributeAction.cs
- OracleParameter.cs
- HtmlContainerControl.cs
- DataSvcMapFile.cs
- ProfileGroupSettingsCollection.cs
- GenericsInstances.cs
- OutputCacheModule.cs
- BackoffTimeoutHelper.cs
- DataView.cs
- EntityTypeEmitter.cs
- EastAsianLunisolarCalendar.cs
- MergeFailedEvent.cs
- SurrogateChar.cs
- ListItemCollection.cs
- adornercollection.cs
- MemberProjectionIndex.cs
- XmlDictionaryWriter.cs
- NativeMethods.cs
- SerializationObjectManager.cs
- PTConverter.cs
- DiscoveryClientDuplexChannel.cs
- DriveNotFoundException.cs
- StringValidatorAttribute.cs
- _RequestCacheProtocol.cs
- BinaryWriter.cs
- EffectiveValueEntry.cs
- DataControlFieldCell.cs
- ObsoleteAttribute.cs
- Nullable.cs
- WinEventHandler.cs
- DataSpaceManager.cs
- UserMapPath.cs
- DiagnosticsConfiguration.cs
- TaskFactory.cs
- HttpCapabilitiesSectionHandler.cs
- BuildProvider.cs
- WebPartEventArgs.cs
- FlowDocumentReaderAutomationPeer.cs
- HtmlMeta.cs
- userdatakeys.cs
- WebConfigurationHost.cs
- CryptoHandle.cs
- Span.cs
- SoapFault.cs
- IsolatedStorage.cs
- SweepDirectionValidation.cs
- COM2PictureConverter.cs
- XhtmlBasicListAdapter.cs
- StsCommunicationException.cs
- Models.cs
- Attributes.cs
- QilBinary.cs
- CompositionTarget.cs
- Vector3DConverter.cs
- WebConfigurationFileMap.cs
- WCFBuildProvider.cs
- XmlSchemaFacet.cs
- TextAdaptor.cs
- ListBox.cs
- HtmlTableRowCollection.cs
- AppLevelCompilationSectionCache.cs
- BufferedGraphicsManager.cs
- CharKeyFrameCollection.cs
- SocketSettings.cs
- RootBrowserWindow.cs
- QilInvoke.cs
- UserNameSecurityTokenProvider.cs
- FileDialogPermission.cs
- ParameterElementCollection.cs
- _DisconnectOverlappedAsyncResult.cs
- TimeoutHelper.cs
- TableRowGroup.cs
- SByte.cs
- TreeView.cs
- EntityViewGenerationConstants.cs
- ObjectKeyFrameCollection.cs
- HopperCache.cs
- PeerCustomResolverBindingElement.cs
- FileDialogCustomPlace.cs
- AutomationPropertyInfo.cs
- CardSpaceException.cs
- ModifierKeysValueSerializer.cs
- BitmapPalettes.cs
- SafePEFileHandle.cs