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
- MatchingStyle.cs
- FixedDSBuilder.cs
- ToolStripDropDownMenu.cs
- StylusPointCollection.cs
- SizeConverter.cs
- BasePattern.cs
- Dictionary.cs
- SafeRegistryHandle.cs
- ContentOperations.cs
- InputLangChangeEvent.cs
- InitiatorSessionSymmetricTransportSecurityProtocol.cs
- ScriptComponentDescriptor.cs
- HttpCookieCollection.cs
- SmiMetaData.cs
- DeclarativeCatalogPart.cs
- XamlFilter.cs
- FixedDSBuilder.cs
- XmlElementList.cs
- itemelement.cs
- DataGridLength.cs
- WebServiceHostFactory.cs
- PathSegment.cs
- StringSorter.cs
- WebServicesInteroperability.cs
- TargetConverter.cs
- DbConnectionPoolCounters.cs
- UriTemplateVariableQueryValue.cs
- HttpException.cs
- Mapping.cs
- SemanticAnalyzer.cs
- QueryOutputWriter.cs
- OleDbConnectionInternal.cs
- MarkupExtensionReturnTypeAttribute.cs
- ErrorStyle.cs
- ObjectDataSourceStatusEventArgs.cs
- ListView.cs
- activationcontext.cs
- Array.cs
- GridItem.cs
- Pkcs7Signer.cs
- AnchorEditor.cs
- FileCodeGroup.cs
- DebugView.cs
- Reference.cs
- ExtenderProvidedPropertyAttribute.cs
- Group.cs
- MessagePartDescription.cs
- MbpInfo.cs
- MD5Cng.cs
- NameValueFileSectionHandler.cs
- PageCatalogPartDesigner.cs
- DesignerLabelAdapter.cs
- ArgIterator.cs
- ForAllOperator.cs
- CodeThrowExceptionStatement.cs
- IncrementalHitTester.cs
- TaiwanLunisolarCalendar.cs
- EntityContainerEntitySet.cs
- DashStyles.cs
- ADMembershipUser.cs
- wgx_commands.cs
- TreeViewItemAutomationPeer.cs
- ExceptionValidationRule.cs
- URLMembershipCondition.cs
- TextChange.cs
- UrlPropertyAttribute.cs
- Menu.cs
- CalendarDay.cs
- EDesignUtil.cs
- IconBitmapDecoder.cs
- LayoutSettings.cs
- AttributeCollection.cs
- Attachment.cs
- ResumeStoryboard.cs
- CategoryAttribute.cs
- AssociationEndMember.cs
- DelegateTypeInfo.cs
- SqlServices.cs
- DataGridViewCellStyleConverter.cs
- CustomAttribute.cs
- Label.cs
- GridPattern.cs
- SortFieldComparer.cs
- PriorityQueue.cs
- OledbConnectionStringbuilder.cs
- DynamicContractTypeBuilder.cs
- BoundsDrawingContextWalker.cs
- ReversePositionQuery.cs
- CollectionViewGroup.cs
- StringAnimationBase.cs
- CurrentChangingEventArgs.cs
- HandlerBase.cs
- TransformPatternIdentifiers.cs
- MobileUserControlDesigner.cs
- DSASignatureFormatter.cs
- ProxySimple.cs
- DataViewListener.cs
- BamlCollectionHolder.cs
- ECDiffieHellman.cs
- SByteStorage.cs