Проблема ввода валютного ввода «Конец должен быть <, чем длина шарнирной последовательности» после обновления .NETC#

Место общения программистов C#
Ответить
Anonymous
 Проблема ввода валютного ввода «Конец должен быть <, чем длина шарнирной последовательности» после обновления .NET

Сообщение Anonymous »

у меня была полностью работающая запись реактивной валюты в моем приложении .net Maui ... < /p>
Запись началась с "r $ 0,00" < /p>
Когда вы вводите 5, она переходит в "r $ 0,05", нажмите 3, он переходит на «r $ 0,53» и т. Д. < /p>
после того, как он будет работать, и так, как это работает, и так, как это работает, и так, как это будет работать, и так, как он работает, и так, как это работает, и так, как это работает. «R $ 159,00», когда я нажимаю «0», снова получаю эту ошибку: < /p>
Java.Lang.IllegalArgumentException: 'end should be < than charSequence length'
< /code>
работал раньше, теперь это не так. Может быть, эта ошибка из -за "." В «r $ 1,590,00» < /p>
код: < /p>
using System.Globalization;

namespace Mobile;
public class EntryValores : Entry
{
private bool executingTextChanged = false;

public EntryValores()
{
// HorizontalTextAlignment = TextAlignment.End;
TextChanged += EntryValores_OnTextChanged;
}

protected void EntryValores_OnTextChanged(object sender, TextChangedEventArgs e)
{
if (executingTextChanged) return;
executingTextChanged = true;

// Formatar valores
decimal valor;
string valorTexto = "0";

// Retornar apenas os dígitos
foreach (char c in Text)
{
if (char.IsDigit(c))
{
valorTexto += c;
}
}

// Se for Nulo, então colocar 0
if (string.IsNullOrEmpty(valorTexto))
{
valorTexto = "0";
}

valor = decimal.Parse(valorTexto) / 100;

// Verificar limites
if (valor > 999999999999m || valor < -999999999999m)
{
// Se o valor for maior que 100 trilhões ou menor que -100 trilhões, cancelar a entrada
Text = e.OldTextValue;
}
else
{
// Colocar o valor formatado
Text = valor.ToString("C", CultureInfo.CurrentCulture);
}

executingTextChanged = false;
}
}


Подробнее здесь: https://stackoverflow.com/questions/795 ... er-net-upd
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»