Вы можете обработать EditText.AddonTextChangeListner и привести каждый 'char' к Int, добавить его в массив и удалить в случае удаления, я думаю, что это будет эффективно
Посмотрите на Math.Round (десятичное)
или перегрузку, которая принимает аргумент MidpointRounding
.
Конечно, вам нужно проанализировать и отформатируйте значение, чтобы получить его из / в текст. Если это ввод, введенный пользователем, вам, вероятно, следует использовать decimal.TryParse
, используя возвращаемое значение, чтобы определить, был ли ввод действительным.
string text = "19500.55";
decimal value;
if (decimal.TryParse(text, out value))
{
value = Math.Round(value);
text = value.ToString();
// Do something with the new text value
}
else
{
// Tell the user their input is invalid
}
Попробуйте это ...
var someValue=123123.234324243m;
var strValue=someValue.ToString("#");