Xamarin仅限数字字段

时间:2014-10-27 15:18:29

标签: xamarin.ios xamarin xamarin.android xamarin.forms

在我的Xamarin表单视图中,我有一个入口控件,我已经添加了

myEntry.Keyboard = Keyboard.Numeric;

仅使其成为小数。

在Android设备中,此代码在任何给定时间只接受一个小数点。

然而在IOS中,它接受多个小数点?有什么办法我也可以在IOS中只限制一个小数点。

2 个答案:

答案 0 :(得分:3)

Xamarin.Forms 条目中,您有一个 TextChanged 事件处理程序,您可以在条目更改时使用该处理程序。

旧文本字符串以及新文本字符串值。

然后,您可以对新文本字符串中的小数点数进行计数,检查它是否大于1 < /强>

如果是,只需将 Entry.Text 设置为旧值,然后您将只有一个小数点。

答案 1 :(得分:0)

使用TextChanged事件处理程序,您可以使用各种TryParse方法之一。这些方法也可以给予特定的文化和风格。以下示例使用Double的版本。

private void Entry_TextChanged(object sender, TextChangedEventArgs e)
{
    string newValue = e.NewTextValue;
    double value;
    if (double.TryParse(newValue, out value))
    {
        // Do logic for valid value
    }
    else
    {
        // Do logic for invalid value
    }
}