Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Base / System / Windows / Input / KeyValueSerializer.cs / 1 / KeyValueSerializer.cs
//----------------------------------------------------------------------------
//
// File: KeyValueSerializer.cs
//
// Description:
//
// KeyValueSerializer: Serializes a key string to a string and vice-versa
//
// Features:
//
// History:
// 08/04/2005 created: Chuck Jazdzewski
//
// Copyright (C) 2005 by Microsoft Corporation. All rights reserved.
//
//---------------------------------------------------------------------------
using System;
using System.ComponentModel; // for TypeConverter
using System.Globalization; // for CultureInfo
using System.Reflection;
using System.Windows;
using System.Windows.Input;
using System.Windows.Markup;
using System.Security.Permissions;
using MS.Utility;
namespace System.Windows.Input
{
///
/// Key Serializer class for serializing a Key
///
///
public class KeyValueSerializer : ValueSerializer
{
///
/// CanConvertFromString()
///
///
///
///
///
public override bool CanConvertFromString(string value, IValueSerializerContext context)
{
return true;
}
///
/// CanConvertToString()
///
///
///
///
///
public override bool CanConvertToString(object value, IValueSerializerContext context)
{
if (!(value is Key))
return false;
Key key = (Key)value;
return ((int)key >= (int)Key.None && (int)key <= (int)Key.OemClear);
}
///
/// ConvertFromString()
///
///
///
///
public override object ConvertFromString(string value, IValueSerializerContext context)
{
TypeConverter converter = TypeDescriptor.GetConverter(typeof(Key));
if (converter != null)
return converter.ConvertFromString(value);
else
return base.ConvertFromString(value, context);
}
///
/// ConvertToString()
///
///
///
///
public override string ConvertToString(object value, IValueSerializerContext context)
{
TypeConverter converter = TypeDescriptor.GetConverter(typeof(Key));
if (converter != null)
return converter.ConvertToInvariantString(value);
else
return base.ConvertToString(value, context);
}
}
}
// 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
- JulianCalendar.cs
- ResourcesChangeInfo.cs
- ComplexPropertyEntry.cs
- OletxTransactionManager.cs
- HTMLTagNameToTypeMapper.cs
- LinkButton.cs
- DependencyPropertyValueSerializer.cs
- RecognizedAudio.cs
- WebPartDeleteVerb.cs
- ReachPrintTicketSerializer.cs
- PixelFormats.cs
- StreamWriter.cs
- DataContractSerializerSection.cs
- LinkLabel.cs
- TraceRecord.cs
- TabItem.cs
- TrackingProfileCache.cs
- AnnotationComponentManager.cs
- ContextStack.cs
- XPathPatternParser.cs
- ListViewPagedDataSource.cs
- ECDsaCng.cs
- ProfileParameter.cs
- SemanticResultValue.cs
- DynamicValidatorEventArgs.cs
- EngineSite.cs
- LocatorManager.cs
- TextReader.cs
- FixedSOMTable.cs
- GridViewUpdatedEventArgs.cs
- AsyncResult.cs
- WeakReferenceKey.cs
- CompositeTypefaceMetrics.cs
- TextCollapsingProperties.cs
- RecordBuilder.cs
- BitmapSizeOptions.cs
- BrushValueSerializer.cs
- UnauthorizedWebPart.cs
- TCPClient.cs
- PerformanceCounterLib.cs
- ListViewUpdateEventArgs.cs
- DefaultValidator.cs
- TagPrefixCollection.cs
- OperationFormatStyle.cs
- EntityContainer.cs
- DiscoveryServiceExtension.cs
- DateBoldEvent.cs
- hresults.cs
- PackagePart.cs
- DataFormats.cs
- ForwardPositionQuery.cs
- TextControlDesigner.cs
- IntersectQueryOperator.cs
- TextEffectResolver.cs
- ToolZone.cs
- ObjectManager.cs
- XmlUtil.cs
- DockProviderWrapper.cs
- XmlQualifiedName.cs
- ClientScriptManager.cs
- TabRenderer.cs
- WmlTextBoxAdapter.cs
- NewArrayExpression.cs
- ProtectedProviderSettings.cs
- ListBase.cs
- DataTableNewRowEvent.cs
- InvariantComparer.cs
- CompilerGeneratedAttribute.cs
- StreamAsIStream.cs
- Setter.cs
- Lease.cs
- AnnouncementEndpointElement.cs
- WebServiceEnumData.cs
- ResourcePermissionBase.cs
- SolidColorBrush.cs
- EncryptedKey.cs
- SortedSet.cs
- HtmlEncodedRawTextWriter.cs
- ADRoleFactoryConfiguration.cs
- TemplateBindingExtensionConverter.cs
- SizeAnimationClockResource.cs
- DrawingContextDrawingContextWalker.cs
- IPPacketInformation.cs
- bidPrivateBase.cs
- FastEncoderWindow.cs
- EdmValidator.cs
- XmlSecureResolver.cs
- StrokeNodeOperations.cs
- ToolStripTextBox.cs
- BamlReader.cs
- XPathSingletonIterator.cs
- ConfigXmlElement.cs
- AssemblyInfo.cs
- SpecialFolderEnumConverter.cs
- ScriptResourceAttribute.cs
- ExpressionValueEditor.cs
- Vector3DCollectionValueSerializer.cs
- DataGridViewCellToolTipTextNeededEventArgs.cs
- ObjectCacheSettings.cs
- Root.cs