Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / wpf / src / Core / CSharp / 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 http://avalon/Cicero/Specifications/Stylable%20InputScope.mht // // History: // 1/20/2005 : yutakan - 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 /// ///http://avalon/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. //---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // Description: class for input scope type-converter // // Please refer to the design specfication http://avalon/Cicero/Specifications/Stylable%20InputScope.mht // // History: // 1/20/2005 : yutakan - 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 /// ///http://avalon/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
- ConnectionPointCookie.cs
- Wizard.cs
- DesignerDataColumn.cs
- DocumentViewerBaseAutomationPeer.cs
- SplashScreenNativeMethods.cs
- SerializationStore.cs
- RequestCachePolicy.cs
- RtfToken.cs
- ClientTarget.cs
- SequenceRange.cs
- BaseParaClient.cs
- XmlJsonWriter.cs
- CodeExporter.cs
- IdentityHolder.cs
- ElementHostPropertyMap.cs
- METAHEADER.cs
- DBConnection.cs
- HttpListenerElement.cs
- OracleTransaction.cs
- DoubleLink.cs
- _Rfc2616CacheValidators.cs
- Light.cs
- PointLight.cs
- SelectedDatesCollection.cs
- SafeCryptoKeyHandle.cs
- ConfigurationManagerInternalFactory.cs
- ToolStripPanelCell.cs
- shaperfactoryquerycacheentry.cs
- BaseDataList.cs
- ContentFilePart.cs
- DataPointer.cs
- UInt64Converter.cs
- URLIdentityPermission.cs
- SqlDataRecord.cs
- XmlText.cs
- XmlSchemaObjectCollection.cs
- ParameterCollectionEditorForm.cs
- TypographyProperties.cs
- XmlAutoDetectWriter.cs
- TypeSystem.cs
- DesignerWidgets.cs
- QueryActivatableWorkflowsCommand.cs
- RelatedView.cs
- HtmlElementEventArgs.cs
- DropDownButton.cs
- HtmlInputFile.cs
- DependencyObjectProvider.cs
- DPTypeDescriptorContext.cs
- ErrorStyle.cs
- LocatorPart.cs
- RtfNavigator.cs
- CurrentTimeZone.cs
- login.cs
- SettingsPropertyValue.cs
- ControlCachePolicy.cs
- SafeCryptHandles.cs
- SchemaElementDecl.cs
- Table.cs
- Matrix3DValueSerializer.cs
- ConcurrentStack.cs
- UserPreferenceChangingEventArgs.cs
- MachineKey.cs
- MailAddress.cs
- TypedTableGenerator.cs
- XmlSchemaObjectCollection.cs
- HttpApplicationStateBase.cs
- ImageDrawing.cs
- XmlnsPrefixAttribute.cs
- CodeTypeReference.cs
- HandlerBase.cs
- HtmlImage.cs
- SQLBytes.cs
- XmlAnyElementAttribute.cs
- SystemIcons.cs
- HMACSHA384.cs
- WinEventQueueItem.cs
- ConfigDefinitionUpdates.cs
- TemplateBindingExpressionConverter.cs
- BamlResourceContent.cs
- ServicesUtilities.cs
- XmlSchemaAttribute.cs
- FixUpCollection.cs
- SystemIPAddressInformation.cs
- DataFormat.cs
- ControlEvent.cs
- RSAOAEPKeyExchangeFormatter.cs
- CssStyleCollection.cs
- BinaryConverter.cs
- RecordConverter.cs
- ToolStripStatusLabel.cs
- CfgSemanticTag.cs
- UriExt.cs
- UInt64.cs
- SafeBitVector32.cs
- AddInController.cs
- clipboard.cs
- nulltextcontainer.cs
- LoginName.cs
- XamlInt32CollectionSerializer.cs
- WebConfigurationManager.cs