我怎么能只留下一个" 0"之前"。"?我TextBox
只接受数字而你只能写一个" 0"之前"。",但你可以写任何数字,如900或5000。
这是我使用的伪代码:
if (0 > 1 before "." && 0 is first digit)
{
Remove all zeros before "." and left one;
}
答案 0 :(得分:0)
像这样使用
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#fff">
<ListView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:marginTop="20sp"
android:marginBottom="10sp"
android:divider="@android:color/transparent"
android:id="@+id/listview"
android:padding="5sp"
android:dividerHeight="5.0sp"
></ListView>
</RelativeLayout>
答案 1 :(得分:0)
继续TextChanged事件有一些缺点。例如,用户可能想要输入零,然后在其前面加上数字(。)符号。您的代码将在输入数字之前删除所有前导零。最好使用其他事件,如Validating或LostFocus。代码很简单:
textbox.Text = textbox.Text.TrimStart('0');
您可以使用NumericUpDown控件进行纯数字输入。它将验证文本是否为数字,并根据DecimalPlaces等设置对其进行格式化。
答案 2 :(得分:0)
也许这个可以提供帮助:
public string ZeroPoint(string a)
{
int pos = a.IndexOf(".");
if (pos > -1 && a.Substring(0, pos) == new string('0', pos))
{
a = "0" + a.Substring(pos, a.Length - pos);
}
return a;
}