303 if (
string.IsNullOrEmpty(
mask))
307 foreach (
char c
in mask)
366 string text =
string.Empty;
367 for (
int i = 0; i <
Mask.Length; i++)
467 maskedTextProvider.ResetOnPrompt =
false;
468 maskedTextProvider.ResetOnSpace =
false;
469 maskedTextProvider.SkipLiterals =
false;
531 if (
input.Length == 0)
787 if (
input.Length == 0)
843 while (num >= position)
873 if ((c <
'0' || c >
'9') && (c <
'A' || c >
'Z'))
886 if (!
char.IsLetter(c))
888 return char.IsDigit(c);
895 if (c <
'A' || c >
'Z')
934 return charDescriptor.CharType ==
CharType.EditOptional;
943 return charDescriptor.CharType ==
CharType.Separator;
950 if (!
char.IsLetterOrDigit(c) && !
char.IsPunctuation(c) && !
char.IsSymbol(c))
1000 return RemoveAt(position, position);
1178 if (
input.Length == 0)
1207 if (
input.Length == 0)
1280 charDescriptor.IsAssigned =
false;
1320 if (
input.Length == 0)
1351 if (
char.IsLetter(
input))
1353 if (
char.IsUpper(
input))
1368 charDescriptor.IsAssigned =
true;
1450 if (!
char.IsDigit(
input))
1464 if (!
char.IsLetter(
input))
1587 if (
input.Length == 0)
1673 return string.Empty;
1681 return string.Empty;
1701 return string.Empty;
static ? object CreateInstance([DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicConstructors|DynamicallyAccessedMemberTypes.NonPublicConstructors)] Type type, BindingFlags bindingAttr, Binder? binder, object?[]? args, CultureInfo? culture)
void Add(TKey key, TValue value)
CharDescriptor(int maskPos, CharType charType)
override string ToString()
CaseConversion CaseConversion
int FindPositionInRange(int startPosition, int endPosition, bool direction, CharType charTypeFlags)
bool Replace(char input, int position)
bool IsEditPosition(int position)
bool VerifyString(string input, out int testPosition, out MaskedTextResultHint resultHint)
static readonly int s_RESET_ON_PROMPT
static bool IsEditPosition(CharDescriptor charDescriptor)
bool Replace(string input, int position, out int testPosition, out MaskedTextResultHint resultHint)
MaskedTextProvider(string mask, bool restrictToAscii)
static readonly int s_INCLUDE_LITERALS
void SetString(string input, int testPosition)
bool VerifyEscapeChar(char input, int position)
MaskedTextProvider(string mask, CultureInfo? culture, char passwordChar, bool allowPromptAsInput)
bool Replace(char input, int position, out int testPosition, out MaskedTextResultHint resultHint)
static readonly int s_RESET_ON_LITERALS
int FindAssignedEditPositionFrom(int position, bool direction)
bool RemoveAtInt(int startPosition, int endPosition, out int testPosition, out MaskedTextResultHint resultHint, bool testOnly)
bool Replace(string input, int startPosition, int endPosition, out int testPosition, out MaskedTextResultHint resultHint)
static bool IsAlphanumeric(char c)
IEnumerator EditPositions
void ResetChar(int testPosition)
int AvailableEditPositionCount
static bool IsValidPasswordChar(char c)
static char DefaultPasswordChar
MaskedTextProvider(string mask, CultureInfo? culture)
bool TestEscapeChar(char input, int position, CharDescriptor charDex)
MaskedTextProvider(string mask)
static readonly Type s_maskTextProviderType
static bool GetOperationResultFromHint(MaskedTextResultHint hint)
bool RemoveAt(int startPosition, int endPosition)
int FindEditPositionInRange(int startPosition, int endPosition, bool direction, byte assignedStatus)
void SetChar(char input, int position)
bool Set(string input, out int testPosition, out MaskedTextResultHint resultHint)
bool VerifyChar(char input, int position, out MaskedTextResultHint hint)
static readonly int s_SKIP_SPACE
bool Add(string input, out int testPosition, out MaskedTextResultHint resultHint)
int FindUnassignedEditPositionFrom(int position, bool direction)
bool Remove(out int testPosition, out MaskedTextResultHint resultHint)
bool TestSetChar(char input, int position, out MaskedTextResultHint resultHint)
static bool IsAscii(char c)
static readonly int s_ALLOW_PROMPT_AS_INPUT
bool InsertAt(string input, int position)
string ToString(bool ignorePasswordChar, int startPosition, int length)
static bool IsLiteralPosition(CharDescriptor charDescriptor)
bool IsAvailablePosition(int position)
bool Replace(string input, int position)
int AssignedEditPositionCount
bool TestEscapeChar(char input, int position)
bool TestString(string input, int position, out int testPosition, out MaskedTextResultHint resultHint)
bool InsertAt(char input, int position, out int testPosition, out MaskedTextResultHint resultHint)
MaskedTextProvider(string mask, CultureInfo? culture, bool restrictToAscii)
int FindEditPositionInRange(int startPosition, int endPosition, bool direction)
bool InsertAtInt(string input, int position, out int testPosition, out MaskedTextResultHint resultHint, bool testOnly)
static bool IsAciiAlphanumeric(char c)
bool Replace(char input, int startPosition, int endPosition, out int testPosition, out MaskedTextResultHint resultHint)
bool RemoveAt(int position)
bool TestChar(char input, int position, out MaskedTextResultHint resultHint)
bool InsertAt(char input, int position)
bool Add(char input, out int testPosition, out MaskedTextResultHint resultHint)
void ResetString(int startPosition, int endPosition)
override string ToString()
string ToString(bool ignorePasswordChar)
static bool IsAsciiLetter(char c)
StringBuilder _testString
string ToString(bool ignorePasswordChar, bool includePrompt, bool includeLiterals, int startPosition, int length)
string ToString(bool includePrompt, bool includeLiterals, int startPosition, int length)
bool TestSetString(string input, int position, out int testPosition, out MaskedTextResultHint resultHint)
MaskedTextProvider(string mask, CultureInfo? culture, bool allowPromptAsInput, char promptChar, char passwordChar, bool restrictToAscii)
int FindAssignedEditPositionInRange(int startPosition, int endPosition, bool direction)
List< CharDescriptor > _stringDescriptor
string ToString(int startPosition, int length)
static readonly int s_ASCII_ONLY
static readonly int s_INCLUDE_PROMPT
static bool IsValidInputChar(char c)
MaskedTextProvider(string mask, char passwordChar, bool allowPromptAsInput)
string ToString(bool includePrompt, bool includeLiterals)
bool VerifyString(string input)
static bool IsPrintableChar(char c)
int FindNonEditPositionFrom(int position, bool direction)
int FindNonEditPositionInRange(int startPosition, int endPosition, bool direction)
bool InsertAt(string input, int position, out int testPosition, out MaskedTextResultHint resultHint)
int FindEditPositionFrom(int position, bool direction)
static bool IsValidMaskChar(char c)
void Clear(out MaskedTextResultHint resultHint)
void SetChar(char input, int position, CharDescriptor charDescriptor)
bool RemoveAt(int startPosition, int endPosition, out int testPosition, out MaskedTextResultHint resultHint)
int FindUnassignedEditPositionInRange(int startPosition, int endPosition, bool direction)
virtual TextInfo TextInfo
static CultureInfo ReadOnly(CultureInfo ci)
static CultureInfo[] GetCultures(CultureTypes types)
virtual DateTimeFormatInfo DateTimeFormat
static CultureInfo CurrentCulture
static CultureInfo InvariantCulture
virtual NumberFormatInfo NumberFormat
static string MaskedTextProviderPasswordAndPromptCharError
static string MaskedTextProviderMaskNullOrEmpty
static string MaskedTextProviderInvalidCharError
static string MaskedTextProviderMaskInvalidChar
override string ToString()
StringBuilder Append(char value, int repeatCount)
DynamicallyAccessedMemberTypes