Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Core / CSharp / System / Windows / Input / InputScopeNameConverter.cs / 1305600 / 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
- ManualResetEvent.cs
- DataBinder.cs
- WebPartUserCapability.cs
- RealizationDrawingContextWalker.cs
- TabControlCancelEvent.cs
- DesignerMetadata.cs
- EtwProvider.cs
- XmlSchemaChoice.cs
- ToolConsole.cs
- HttpPostLocalhostServerProtocol.cs
- HttpFormatExtensions.cs
- DataReceivedEventArgs.cs
- SerializationAttributes.cs
- ContextActivityUtils.cs
- WebPageTraceListener.cs
- SerializeAbsoluteContext.cs
- Point.cs
- InvokePatternIdentifiers.cs
- ConsumerConnectionPoint.cs
- SymbolDocumentGenerator.cs
- AssemblyNameUtility.cs
- InputScope.cs
- OutputCacheProfileCollection.cs
- AssemblyHash.cs
- OletxTransactionHeader.cs
- RectangleConverter.cs
- FirstMatchCodeGroup.cs
- COM2AboutBoxPropertyDescriptor.cs
- ScriptResourceInfo.cs
- ActiveDocumentEvent.cs
- JsonCollectionDataContract.cs
- SchemaMapping.cs
- MergePropertyDescriptor.cs
- XPathNodeList.cs
- DiagnosticSection.cs
- WaitHandle.cs
- DataGridPagerStyle.cs
- X509ClientCertificateCredentialsElement.cs
- SqlNotificationEventArgs.cs
- LockingPersistenceProvider.cs
- ResourceReferenceKeyNotFoundException.cs
- InternalResources.cs
- XmlObjectSerializerWriteContextComplexJson.cs
- MeasureItemEvent.cs
- httpserverutility.cs
- EventMappingSettings.cs
- XmlConverter.cs
- ClientProxyGenerator.cs
- TextParagraph.cs
- FormViewUpdatedEventArgs.cs
- ReceiveErrorHandling.cs
- InputLanguageManager.cs
- BackgroundFormatInfo.cs
- WindowsTokenRoleProvider.cs
- TabPanel.cs
- HGlobalSafeHandle.cs
- DispatcherSynchronizationContext.cs
- ValidationError.cs
- StorageEntityContainerMapping.cs
- ViewGenResults.cs
- Propagator.JoinPropagator.JoinPredicateVisitor.cs
- RectangleConverter.cs
- ZeroOpNode.cs
- ISAPIRuntime.cs
- DocumentationServerProtocol.cs
- XmlWriter.cs
- VectorKeyFrameCollection.cs
- _BasicClient.cs
- SafeTokenHandle.cs
- Signature.cs
- DBSqlParser.cs
- UpdateEventArgs.cs
- BridgeDataRecord.cs
- _AutoWebProxyScriptHelper.cs
- ISO2022Encoding.cs
- DataChangedEventManager.cs
- DataGridCaption.cs
- BeginStoryboard.cs
- _NegotiateClient.cs
- ParameterReplacerVisitor.cs
- AssemblyAttributes.cs
- BulletedList.cs
- AuthenticatedStream.cs
- SafeNativeMethodsCLR.cs
- Italic.cs
- DoubleAnimationBase.cs
- PeerToPeerException.cs
- ErrorWebPart.cs
- URLMembershipCondition.cs
- ContextMenu.cs
- IInstanceTable.cs
- LogStream.cs
- ClientProxyGenerator.cs
- TrustManagerPromptUI.cs
- AsyncContentLoadedEventArgs.cs
- _NetRes.cs
- EnumValidator.cs
- Vector.cs
- XmlElementAttributes.cs
- MethodCallConverter.cs