Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / 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
- PagesSection.cs
- AppDomainInstanceProvider.cs
- RenamedEventArgs.cs
- DayRenderEvent.cs
- BuildProviderInstallComponent.cs
- HandlerMappingMemo.cs
- SoapRpcMethodAttribute.cs
- WaitHandle.cs
- CallTemplateAction.cs
- ListViewSortEventArgs.cs
- SQLInt16Storage.cs
- PropertyEmitter.cs
- MobileComponentEditorPage.cs
- TextServicesCompartmentContext.cs
- CodeTypeMember.cs
- Utility.cs
- WebBaseEventKeyComparer.cs
- UnsafeNativeMethods.cs
- XsltSettings.cs
- odbcmetadatacolumnnames.cs
- DataKey.cs
- MarkupExtensionParser.cs
- RowType.cs
- MULTI_QI.cs
- XmlIlGenerator.cs
- DataSourceProvider.cs
- WorkflowInspectionServices.cs
- DeclaredTypeElement.cs
- CompositionTarget.cs
- GridViewColumnHeaderAutomationPeer.cs
- TransformedBitmap.cs
- XmlSerializationWriter.cs
- QualifiedCellIdBoolean.cs
- TextRangeEditTables.cs
- AssociatedControlConverter.cs
- LineServicesCallbacks.cs
- QueryAccessibilityHelpEvent.cs
- GCHandleCookieTable.cs
- PowerModeChangedEventArgs.cs
- SimpleBitVector32.cs
- SmtpDigestAuthenticationModule.cs
- ReceiveErrorHandling.cs
- CodeAccessSecurityEngine.cs
- EdgeProfileValidation.cs
- CommentEmitter.cs
- CustomCategoryAttribute.cs
- VectorCollection.cs
- ObfuscateAssemblyAttribute.cs
- ControlBuilderAttribute.cs
- TypeToStringValueConverter.cs
- BinHexEncoder.cs
- PageAdapter.cs
- OpenTypeLayoutCache.cs
- DataSourceProvider.cs
- cookiecontainer.cs
- DataViewSettingCollection.cs
- HtmlTernaryTree.cs
- CrossSiteScriptingValidation.cs
- GACMembershipCondition.cs
- NTAccount.cs
- InputProcessorProfiles.cs
- RequestCacheManager.cs
- RegexGroupCollection.cs
- TraceInternal.cs
- ParameterCollectionEditorForm.cs
- LocalizabilityAttribute.cs
- arabicshape.cs
- DataGridViewRowConverter.cs
- SqlDataSourceCommandEventArgs.cs
- ToolStripDesigner.cs
- WebAdminConfigurationHelper.cs
- ClrPerspective.cs
- ISSmlParser.cs
- TextBlock.cs
- MediaTimeline.cs
- _Win32.cs
- CapabilitiesRule.cs
- CacheEntry.cs
- SafeCertificateContext.cs
- HtmlHistory.cs
- MatrixUtil.cs
- RelationshipEnd.cs
- SafeArrayTypeMismatchException.cs
- TreeIterators.cs
- TypeForwardedToAttribute.cs
- BitmapSource.cs
- HtmlSelect.cs
- FocusManager.cs
- HelpKeywordAttribute.cs
- SeekStoryboard.cs
- WindowsImpersonationContext.cs
- IISUnsafeMethods.cs
- BlurEffect.cs
- InternalUserCancelledException.cs
- Socket.cs
- AudioLevelUpdatedEventArgs.cs
- SingleSelectRootGridEntry.cs
- ProfileModule.cs
- Container.cs
- StringArrayConverter.cs