Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / Markup / Baml2006 / TypeConverterMarkupExtension.cs / 1305600 / TypeConverterMarkupExtension.cs
using System; using System.Collections.Generic; using System.ComponentModel; namespace System.Windows.Baml2006 { internal class TypeConverterMarkupExtension : System.Windows.Markup.MarkupExtension { private TypeConverter _converter; private object _value; public TypeConverterMarkupExtension(TypeConverter converter, object value) { _converter = converter; _value = value; } public override object ProvideValue(IServiceProvider serviceProvider) { return _converter.ConvertFrom(new TypeConverterContext(serviceProvider), System.Globalization.CultureInfo.InvariantCulture, _value); } private class TypeConverterContext : ITypeDescriptorContext { private IServiceProvider _serviceProvider; public TypeConverterContext(IServiceProvider serviceProvider) { _serviceProvider = serviceProvider; } object IServiceProvider.GetService(Type serviceType) { return _serviceProvider.GetService(serviceType); } #region ITypeDescriptorContext Methods // ITypeDescriptorContext derives from IServiceProvider. void ITypeDescriptorContext.OnComponentChanged() { } bool ITypeDescriptorContext.OnComponentChanging() { return false; } IContainer ITypeDescriptorContext.Container { get { return null; } } object ITypeDescriptorContext.Instance { get { return null; } } PropertyDescriptor ITypeDescriptorContext.PropertyDescriptor { get { return null; } } #endregion } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. using System; using System.Collections.Generic; using System.ComponentModel; namespace System.Windows.Baml2006 { internal class TypeConverterMarkupExtension : System.Windows.Markup.MarkupExtension { private TypeConverter _converter; private object _value; public TypeConverterMarkupExtension(TypeConverter converter, object value) { _converter = converter; _value = value; } public override object ProvideValue(IServiceProvider serviceProvider) { return _converter.ConvertFrom(new TypeConverterContext(serviceProvider), System.Globalization.CultureInfo.InvariantCulture, _value); } private class TypeConverterContext : ITypeDescriptorContext { private IServiceProvider _serviceProvider; public TypeConverterContext(IServiceProvider serviceProvider) { _serviceProvider = serviceProvider; } object IServiceProvider.GetService(Type serviceType) { return _serviceProvider.GetService(serviceType); } #region ITypeDescriptorContext Methods // ITypeDescriptorContext derives from IServiceProvider. void ITypeDescriptorContext.OnComponentChanged() { } bool ITypeDescriptorContext.OnComponentChanging() { return false; } IContainer ITypeDescriptorContext.Container { get { return null; } } object ITypeDescriptorContext.Instance { get { return null; } } PropertyDescriptor ITypeDescriptorContext.PropertyDescriptor { get { return null; } } #endregion } } } // 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
- DefaultHttpHandler.cs
- DesignerVerb.cs
- MediaSystem.cs
- ParameterEditorUserControl.cs
- FixedSOMImage.cs
- EntitySet.cs
- InvalidEnumArgumentException.cs
- DispatcherOperation.cs
- TypeAccessException.cs
- InfiniteIntConverter.cs
- DictionaryBase.cs
- FrameworkRichTextComposition.cs
- ControlIdConverter.cs
- AspNetHostingPermission.cs
- DefaultAssemblyResolver.cs
- SimpleMailWebEventProvider.cs
- InvalidOleVariantTypeException.cs
- HttpServerVarsCollection.cs
- ConfigXmlDocument.cs
- DataObjectSettingDataEventArgs.cs
- ImageList.cs
- ValidationSummaryDesigner.cs
- ToolStripTextBox.cs
- SqlConnectionPoolProviderInfo.cs
- autovalidator.cs
- PagedDataSource.cs
- RtType.cs
- SecurityTokenValidationException.cs
- WebScriptEnablingElement.cs
- Listbox.cs
- ImageClickEventArgs.cs
- ProcessStartInfo.cs
- Grid.cs
- SectionInformation.cs
- grammarelement.cs
- DurableErrorHandler.cs
- NamedElement.cs
- XmlComplianceUtil.cs
- DirectoryNotFoundException.cs
- DeviceContexts.cs
- odbcmetadatacolumnnames.cs
- DocumentReferenceCollection.cs
- HttpProtocolImporter.cs
- RegexWorker.cs
- ThrowHelper.cs
- RankException.cs
- DataGrid.cs
- MSG.cs
- LabelInfo.cs
- TargetInvocationException.cs
- CodeLinePragma.cs
- Function.cs
- SqlClientFactory.cs
- TransformerConfigurationWizardBase.cs
- DbTransaction.cs
- StringFormat.cs
- DrawingState.cs
- ComponentEvent.cs
- XmlSchemaNotation.cs
- ScriptingSectionGroup.cs
- NamespaceListProperty.cs
- SafeEventLogReadHandle.cs
- ComponentDispatcherThread.cs
- ParserContext.cs
- xsdvalidator.cs
- ArgumentDesigner.xaml.cs
- AdjustableArrowCap.cs
- UniqueEventHelper.cs
- CompositeTypefaceMetrics.cs
- CursorConverter.cs
- __Filters.cs
- MetadataProperty.cs
- ConfigXmlAttribute.cs
- GenerateScriptTypeAttribute.cs
- InvalidPrinterException.cs
- Currency.cs
- MatrixAnimationUsingPath.cs
- RecommendedAsConfigurableAttribute.cs
- OraclePermission.cs
- InternalUserCancelledException.cs
- HotSpot.cs
- ColorConvertedBitmap.cs
- HtmlInputControl.cs
- NamespaceDecl.cs
- HtmlForm.cs
- AggregateNode.cs
- ToolStripItemEventArgs.cs
- BindingExpressionBase.cs
- FileInfo.cs
- Stackframe.cs
- XmlSchemaInfo.cs
- SplitterPanel.cs
- EditingMode.cs
- initElementDictionary.cs
- SqlFormatter.cs
- FontResourceCache.cs
- BinaryMessageFormatter.cs
- BindingExpressionBase.cs
- StreamReader.cs
- LineSegment.cs