Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Core / System / Windows / Input / InputScopeNameConverter.cs / 1 / InputScopeNameConverter.cs
//---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // Description: class for input scope type-converter // // Please refer to the design specfication [....]/Cicero/Specifications/Stylable%20InputScope.mht // // History: // 1/20/2005 : [....] - created // //--------------------------------------------------------------------------- using System; using System.Collections.Generic; using System.Windows.Input; using System.ComponentModel; using System.Globalization; using System.ComponentModel.Design.Serialization; namespace System.Windows.Input { ////// type-converter which performs type conversions for inputscope /// ///[....]/Cicero/Specifications/Stylable%20InputScope.mht public class InputScopeNameConverter : TypeConverter { ////// Returns whether this converter can convert an object of one type to InputScope type /// InputScopeConverter only supports string type to convert from /// /// /// The conversion context. /// /// /// The type to convert from. /// ////// True if conversion is possible, false otherwise. /// public override bool CanConvertFrom(ITypeDescriptorContext context, Type sourceType) { // We can only handle string. if (sourceType == typeof(string)) { return true; } return false; } ////// Returns whether this converter can convert the object to the specified type. /// InputScopeConverter only supports string type to convert to /// /// /// The conversion context. /// /// /// The type to convert to. /// ////// True if conversion is possible, false otherwise. /// public override bool CanConvertTo(ITypeDescriptorContext context, Type destinationType) { if (typeof (string) == destinationType && null != context && null != context.Instance && context.Instance is InputScopeName) { return true; } return false; } ////// Converts the given value to InputScope type /// /// /// The conversion context. /// /// /// The current culture that applies to the conversion. /// /// /// The source object to convert from. /// ////// InputScope object with a specified scope name, otherwise InputScope with Default scope. /// public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object source) { string stringSource = source as string; InputScopeNameValue nameValue = InputScopeNameValue.Default; InputScopeName inputScopeName; if (null != stringSource) { stringSource = stringSource.Trim(); if (-1 != stringSource.LastIndexOf('.')) stringSource = stringSource.Substring(stringSource.LastIndexOf('.')+1); if (!stringSource.Equals(String.Empty)) { nameValue = (InputScopeNameValue)Enum.Parse(typeof(InputScopeNameValue), stringSource); } } inputScopeName = new InputScopeName(); inputScopeName.NameValue = nameValue; return inputScopeName; } ////// Converts the given value as InputScope object to the specified type. /// This converter only supports string type as a type to convert to. /// /// /// The conversion context. /// /// /// The current culture that applies to the conversion. /// /// /// The value to convert. /// /// /// The type to convert to. /// ////// A new object of the specified type (string) converted from the given InputScope object. /// public override object ConvertTo(ITypeDescriptorContext context, CultureInfo culture, object value, Type destinationType) { InputScopeName inputScopeName = value as InputScopeName; if (null != destinationType && null != inputScopeName) { if (destinationType == typeof(string)) { return Enum.GetName(typeof(InputScopeNameValue), inputScopeName.NameValue); } } 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
- AssemblyName.cs
- Int32CollectionValueSerializer.cs
- ToolTipAutomationPeer.cs
- ProxyWebPartManagerDesigner.cs
- DockEditor.cs
- PropertyGridCommands.cs
- StandardCommands.cs
- EventMappingSettingsCollection.cs
- WindowsSysHeader.cs
- XPathNodeHelper.cs
- XmlArrayAttribute.cs
- SetIndexBinder.cs
- IItemContainerGenerator.cs
- GridViewPageEventArgs.cs
- SessionPageStateSection.cs
- SiteMapDesignerDataSourceView.cs
- UrlPath.cs
- CurrentChangingEventArgs.cs
- BitmapEffectDrawing.cs
- WebPartMenu.cs
- PerformanceCounter.cs
- PreviewPageInfo.cs
- SignedInfo.cs
- WindowsListViewGroup.cs
- SessionState.cs
- RegexTree.cs
- EnlistmentTraceIdentifier.cs
- OracleCommandBuilder.cs
- ControlValuePropertyAttribute.cs
- FirstMatchCodeGroup.cs
- DetailsViewDeletedEventArgs.cs
- ComponentRenameEvent.cs
- AppDomainFactory.cs
- VisualStyleInformation.cs
- ReadOnlyDictionary.cs
- CatalogZoneBase.cs
- ObjectManager.cs
- FlowLayoutSettings.cs
- DocumentPageViewAutomationPeer.cs
- Panel.cs
- VirtualPathProvider.cs
- AsyncOperationContext.cs
- ReadOnlyPropertyMetadata.cs
- WMIGenerator.cs
- UserNamePasswordValidator.cs
- baseaxisquery.cs
- ListViewItemEventArgs.cs
- PermissionListSet.cs
- SoapIgnoreAttribute.cs
- XmlKeywords.cs
- ZipIOLocalFileDataDescriptor.cs
- InvalidProgramException.cs
- ConfigPathUtility.cs
- DoubleLinkList.cs
- AmbientLight.cs
- EmptyControlCollection.cs
- BamlLocalizabilityResolver.cs
- BufferModesCollection.cs
- DPTypeDescriptorContext.cs
- ModelVisual3D.cs
- SynchronizationLockException.cs
- UrlAuthorizationModule.cs
- SmtpFailedRecipientsException.cs
- Variable.cs
- XhtmlBasicTextBoxAdapter.cs
- SetterBase.cs
- CqlBlock.cs
- DataControlLinkButton.cs
- Journal.cs
- SQLMembershipProvider.cs
- GeneralTransform.cs
- EmptyCollection.cs
- ResourceContainerWrapper.cs
- AppearanceEditorPart.cs
- ResourceReferenceKeyNotFoundException.cs
- CaseStatement.cs
- TranslateTransform.cs
- HttpGetServerProtocol.cs
- RenderingBiasValidation.cs
- HMACSHA1.cs
- Int32CollectionConverter.cs
- TargetInvocationException.cs
- Policy.cs
- TreeNode.cs
- MainMenu.cs
- SqlServices.cs
- ControlCachePolicy.cs
- SqlProvider.cs
- GatewayDefinition.cs
- ColorConverter.cs
- AddingNewEventArgs.cs
- StandardOleMarshalObject.cs
- GroupBox.cs
- ParentUndoUnit.cs
- TypeTypeConverter.cs
- DefaultTraceListener.cs
- Matrix.cs
- DataContractSerializerSection.cs
- OutputChannelBinder.cs
- ControlBuilder.cs