Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / System.Activities / Microsoft / VisualBasic / Activities / XamlIntegration / VisualBasicSettingsConverter.cs / 1407647 / VisualBasicSettingsConverter.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace Microsoft.VisualBasic.Activities.XamlIntegration { using System; using System.ComponentModel; using System.Runtime; using System.Globalization; using System.Activities; // this class is necessary in order for our value serializer to get called by XAML, // even though the functionality is a no-op public sealed class VisualBasicSettingsConverter : TypeConverter { public VisualBasicSettingsConverter() : base() { } public override bool CanConvertFrom(ITypeDescriptorContext context, Type sourceType) { if (sourceType == TypeHelper.StringType) { return true; } return base.CanConvertFrom(context, sourceType); } public override bool CanConvertTo(ITypeDescriptorContext context, Type destinationType) { if (destinationType == TypeHelper.StringType) { return false; } return base.CanConvertTo(context, destinationType); } public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value) { string sourceString = value as string; if (sourceString != null) { if (sourceString.Equals(VisualBasicSettingsValueSerializer.ImplementationVisualBasicSettingsValue)) { // this is the VBSettings for the internal implementation // suppress its Xaml serialization VisualBasicSettings settings = CollectXmlNamespacesAndAssemblies(context); if (settings != null) { settings.SuppressXamlSerialization = true; } return settings; } if (!(sourceString.Equals(String.Empty) || sourceString.Equals(VisualBasicSettingsValueSerializer.VisualBasicSettingsValue))) { throw FxTrace.Exception.AsError(new InvalidOperationException(SR.InvalidVisualBasicSettingsValue)); } return CollectXmlNamespacesAndAssemblies(context); } return base.ConvertFrom(context, culture, value); } public override object ConvertTo(ITypeDescriptorContext context, CultureInfo culture, object value, Type destinationType) { return base.ConvertTo(context, culture, value, destinationType); } VisualBasicSettings CollectXmlNamespacesAndAssemblies(ITypeDescriptorContext context) { return VisualBasicExpressionConverter.CollectXmlNamespacesAndAssemblies(context); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- StringComparer.cs
- EncodingInfo.cs
- URLString.cs
- _NegoStream.cs
- WorkflowOperationBehavior.cs
- HintTextConverter.cs
- BezierSegment.cs
- SecurityCriticalDataForSet.cs
- __Filters.cs
- XXXInfos.cs
- ClientTarget.cs
- Win32PrintDialog.cs
- GPRECT.cs
- Wizard.cs
- StreamReader.cs
- InputScopeAttribute.cs
- FtpWebResponse.cs
- HandlerBase.cs
- ObjectStateFormatter.cs
- DesignerActionVerbList.cs
- Hash.cs
- PropertyDescriptor.cs
- XmlAggregates.cs
- Schema.cs
- CqlParserHelpers.cs
- Scripts.cs
- GraphicsContainer.cs
- exports.cs
- BuildResult.cs
- XmlParserContext.cs
- ObjectTokenCategory.cs
- Size3D.cs
- CodeDomComponentSerializationService.cs
- AlignmentYValidation.cs
- FlowDocumentReader.cs
- ConfigurationLockCollection.cs
- TaiwanLunisolarCalendar.cs
- RadioButtonStandardAdapter.cs
- PropertyGridEditorPart.cs
- ImageSource.cs
- SqlNamer.cs
- RadialGradientBrush.cs
- QuotaExceededException.cs
- RelatedView.cs
- ComplexPropertyEntry.cs
- UshortList2.cs
- ApplicationGesture.cs
- _FtpControlStream.cs
- Literal.cs
- SchemaMerger.cs
- OracleException.cs
- DesignBindingValueUIHandler.cs
- OdbcDataReader.cs
- XPathDocument.cs
- DataGridViewColumnEventArgs.cs
- ToolbarAUtomationPeer.cs
- HtmlControlDesigner.cs
- KoreanCalendar.cs
- SeekableReadStream.cs
- ExtendedPropertyDescriptor.cs
- FileSystemWatcher.cs
- SoapTypeAttribute.cs
- TemplateParser.cs
- SmtpReplyReader.cs
- RemoteCryptoSignHashRequest.cs
- ValidatorUtils.cs
- ConfigurationErrorsException.cs
- ImmutableObjectAttribute.cs
- KnownAssemblyEntry.cs
- BypassElementCollection.cs
- KeyValueConfigurationCollection.cs
- Preprocessor.cs
- DataGridAddNewRow.cs
- Decoder.cs
- Adorner.cs
- InputQueue.cs
- TextSelectionHighlightLayer.cs
- QueryCacheEntry.cs
- XmlSerializableWriter.cs
- XmlComment.cs
- Int16.cs
- WebPartCancelEventArgs.cs
- TrackingProfileCache.cs
- DataGridViewRowsAddedEventArgs.cs
- XmlDocumentViewSchema.cs
- _DomainName.cs
- BindableAttribute.cs
- DataGridViewRow.cs
- TabletDeviceInfo.cs
- ReliabilityContractAttribute.cs
- BitmapEffectDrawing.cs
- ImageFormat.cs
- LocalizabilityAttribute.cs
- TextTreeUndoUnit.cs
- PrincipalPermission.cs
- DPTypeDescriptorContext.cs
- DiffuseMaterial.cs
- TreeViewEvent.cs
- DelimitedListTraceListener.cs
- StatusBar.cs