Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / ndp / fx / src / Configuration / System / Configuration / IntegerValidator.cs / 1 / IntegerValidator.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
using System;
using System.Collections;
using System.IO;
using System.Reflection;
using System.Security.Permissions;
using System.Xml;
using System.Collections.Specialized;
using System.Globalization;
using System.ComponentModel;
using System.Security;
using System.Text;
using System.Text.RegularExpressions;
namespace System.Configuration {
//
// Type validators: Unsealed so users can derive to extend the funcionality without repeating it
// =============================================================================================
public class IntegerValidator : ConfigurationValidatorBase {
private enum ValidationFlags {
None = 0x0000,
ExclusiveRange = 0x0001, // If set the value must be outside of the range instead of inside
}
private ValidationFlags _flags = ValidationFlags.None;
private int _minValue = int.MinValue;
private int _maxValue = int.MaxValue;
private int _resolution = 1;
public IntegerValidator(int minValue, int maxValue) :
this(minValue, maxValue, false, 1) {
}
public IntegerValidator(int minValue, int maxValue, bool rangeIsExclusive) :
this(minValue, maxValue, rangeIsExclusive, 1) {
}
public IntegerValidator(int minValue, int maxValue, bool rangeIsExclusive, int resolution) {
if (resolution <= 0) {
throw new ArgumentOutOfRangeException("resolution");
}
if (minValue > maxValue) {
throw new ArgumentOutOfRangeException("minValue", SR.GetString(SR.Validator_min_greater_than_max));
}
_minValue = minValue;
_maxValue = maxValue;
_resolution = resolution;
_flags = rangeIsExclusive ? ValidationFlags.ExclusiveRange : ValidationFlags.None;
}
public override bool CanValidate(Type type) {
return (type == typeof(int));
}
public override void Validate(object value) {
ValidatorUtils.HelperParamValidation(value, typeof(int));
ValidatorUtils.ValidateScalar((int)value,
_minValue,
_maxValue,
_resolution,
_flags == ValidationFlags.ExclusiveRange);
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
using System;
using System.Collections;
using System.IO;
using System.Reflection;
using System.Security.Permissions;
using System.Xml;
using System.Collections.Specialized;
using System.Globalization;
using System.ComponentModel;
using System.Security;
using System.Text;
using System.Text.RegularExpressions;
namespace System.Configuration {
//
// Type validators: Unsealed so users can derive to extend the funcionality without repeating it
// =============================================================================================
public class IntegerValidator : ConfigurationValidatorBase {
private enum ValidationFlags {
None = 0x0000,
ExclusiveRange = 0x0001, // If set the value must be outside of the range instead of inside
}
private ValidationFlags _flags = ValidationFlags.None;
private int _minValue = int.MinValue;
private int _maxValue = int.MaxValue;
private int _resolution = 1;
public IntegerValidator(int minValue, int maxValue) :
this(minValue, maxValue, false, 1) {
}
public IntegerValidator(int minValue, int maxValue, bool rangeIsExclusive) :
this(minValue, maxValue, rangeIsExclusive, 1) {
}
public IntegerValidator(int minValue, int maxValue, bool rangeIsExclusive, int resolution) {
if (resolution <= 0) {
throw new ArgumentOutOfRangeException("resolution");
}
if (minValue > maxValue) {
throw new ArgumentOutOfRangeException("minValue", SR.GetString(SR.Validator_min_greater_than_max));
}
_minValue = minValue;
_maxValue = maxValue;
_resolution = resolution;
_flags = rangeIsExclusive ? ValidationFlags.ExclusiveRange : ValidationFlags.None;
}
public override bool CanValidate(Type type) {
return (type == typeof(int));
}
public override void Validate(object value) {
ValidatorUtils.HelperParamValidation(value, typeof(int));
ValidatorUtils.ValidateScalar((int)value,
_minValue,
_maxValue,
_resolution,
_flags == ValidationFlags.ExclusiveRange);
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- Metadata.cs
- UIHelper.cs
- FontResourceCache.cs
- TreeViewImageKeyConverter.cs
- DataGridViewColumnStateChangedEventArgs.cs
- BuildProvidersCompiler.cs
- ByteArrayHelperWithString.cs
- DocumentGridContextMenu.cs
- OdbcErrorCollection.cs
- PbrsForward.cs
- Vector3DValueSerializer.cs
- ProtectedUri.cs
- WebPartManager.cs
- PeerContact.cs
- IDQuery.cs
- WaitHandle.cs
- WindowsSpinner.cs
- DataGridViewLayoutData.cs
- TreeViewCancelEvent.cs
- ChannelServices.cs
- ZipIOFileItemStream.cs
- HtmlSelect.cs
- TypedTableBase.cs
- ColumnHeader.cs
- UnaryExpressionHelper.cs
- TableCell.cs
- TextBoxLine.cs
- DataGridToolTip.cs
- Renderer.cs
- DataTable.cs
- MailAddressCollection.cs
- ToolStripSeparator.cs
- Focus.cs
- GuidTagList.cs
- MenuItem.cs
- UnitySerializationHolder.cs
- TypeValidationEventArgs.cs
- BitmapMetadataEnumerator.cs
- DBCommandBuilder.cs
- BindingMAnagerBase.cs
- SchemaImporterExtension.cs
- ToolStripItem.cs
- ClickablePoint.cs
- ValidationHelper.cs
- DataDesignUtil.cs
- DataGridViewColumnEventArgs.cs
- Brushes.cs
- X509ChainElement.cs
- FixedTextSelectionProcessor.cs
- SystemTcpStatistics.cs
- Filter.cs
- View.cs
- TabPage.cs
- Crypto.cs
- ServiceContractViewControl.Designer.cs
- ToolboxItemCollection.cs
- SchemaLookupTable.cs
- SchemaImporter.cs
- CodeAttachEventStatement.cs
- IdentitySection.cs
- SAPIEngineTypes.cs
- GridViewRowPresenterBase.cs
- SqlFacetAttribute.cs
- ObjectQueryState.cs
- ManagedCodeMarkers.cs
- ResizingMessageFilter.cs
- GenericWebPart.cs
- Screen.cs
- HostingPreferredMapPath.cs
- TextFormatterContext.cs
- ViewGenerator.cs
- InheritablePropertyChangeInfo.cs
- DataObjectEventArgs.cs
- SmtpFailedRecipientException.cs
- X509SecurityTokenProvider.cs
- MsmqIntegrationProcessProtocolHandler.cs
- ComNativeDescriptor.cs
- SettingsPropertyNotFoundException.cs
- ObjectSet.cs
- PtsPage.cs
- ImageSource.cs
- ScriptingJsonSerializationSection.cs
- DoubleLink.cs
- DateTimeFormatInfoScanner.cs
- OleDbStruct.cs
- PersonalizationStateQuery.cs
- DataObjectAttribute.cs
- ResourcePool.cs
- ProcessHostFactoryHelper.cs
- ReadOnlyPropertyMetadata.cs
- Button.cs
- OdbcUtils.cs
- MetaTableHelper.cs
- EventData.cs
- GenerateTemporaryAssemblyTask.cs
- SqlFlattener.cs
- TransportChannelFactory.cs
- ExternalDataExchangeService.cs
- KnownTypesProvider.cs
- FixedLineResult.cs