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
- controlskin.cs
- KnownBoxes.cs
- InputReportEventArgs.cs
- TemplateField.cs
- Int64Converter.cs
- HandoffBehavior.cs
- TagElement.cs
- HttpRuntime.cs
- VarRefManager.cs
- UserNameSecurityToken.cs
- Matrix3D.cs
- Point3DCollection.cs
- AttributeCallbackBuilder.cs
- ButtonBase.cs
- PopupRootAutomationPeer.cs
- SqlIdentifier.cs
- XmlArrayItemAttributes.cs
- RemotingConfigParser.cs
- TableRowsCollectionEditor.cs
- DataBoundLiteralControl.cs
- XmlBaseReader.cs
- HandlerWithFactory.cs
- ParamArrayAttribute.cs
- ToolStripSystemRenderer.cs
- SerialStream.cs
- AnnouncementEventArgs.cs
- DrawListViewItemEventArgs.cs
- HttpHandlerActionCollection.cs
- BamlLocalizabilityResolver.cs
- StringKeyFrameCollection.cs
- EntityTemplateFactory.cs
- TemplateBindingExpressionConverter.cs
- HostingPreferredMapPath.cs
- ClientSponsor.cs
- RegexRunner.cs
- DocumentPage.cs
- Convert.cs
- AuthenticationService.cs
- ToolStripItemRenderEventArgs.cs
- Inflater.cs
- PersonalizationStateInfo.cs
- WebPartDescriptionCollection.cs
- DataGrid.cs
- HostProtectionPermission.cs
- DataGridViewImageCell.cs
- FixedBufferAttribute.cs
- SrgsSubset.cs
- ParentUndoUnit.cs
- CqlQuery.cs
- Formatter.cs
- Int64KeyFrameCollection.cs
- Vector3DAnimationUsingKeyFrames.cs
- KeyValuePair.cs
- DataControlImageButton.cs
- Attributes.cs
- ProcessModuleDesigner.cs
- SQLInt32Storage.cs
- AppDomainManager.cs
- ServiceModelSecurityTokenRequirement.cs
- VirtualizingPanel.cs
- HandoffBehavior.cs
- DataShape.cs
- DocumentPageTextView.cs
- XhtmlBasicObjectListAdapter.cs
- SemaphoreFullException.cs
- ObjectSet.cs
- SerializerWriterEventHandlers.cs
- KeyGestureConverter.cs
- GrammarBuilderRuleRef.cs
- XPathConvert.cs
- HelpExampleGenerator.cs
- PageCatalogPart.cs
- WindowsListViewGroup.cs
- ExcCanonicalXml.cs
- ParserHooks.cs
- TableParaClient.cs
- CommunicationObjectFaultedException.cs
- EntityDataSourceSelectingEventArgs.cs
- PixelFormats.cs
- Vector3DAnimation.cs
- SqlConnection.cs
- CancelEventArgs.cs
- DisableDpiAwarenessAttribute.cs
- CookielessHelper.cs
- TdsParameterSetter.cs
- processwaithandle.cs
- XsltException.cs
- ApplicationFileParser.cs
- ToolStripOverflow.cs
- TableItemPattern.cs
- Misc.cs
- RewritingPass.cs
- Base64WriteStateInfo.cs
- ConfigXmlAttribute.cs
- SocketStream.cs
- FileCodeGroup.cs
- WindowsFormsSynchronizationContext.cs
- httpstaticobjectscollection.cs
- DispatcherEventArgs.cs
- HierarchicalDataSourceDesigner.cs