Using NumberBox directly doesn't seem to meet your needs.
Use Regex like this in the TextBox to delete the character when the user enters non-numeric character.
Page.xaml
<TextBox TextChanged="TextBox_TextChanged" />
Page.xaml.cs
private void TextBox_TextChanged(object sender, TextChangedEventArgs e)
{
var textbox = (TextBox)sender;
if (!Regex.IsMatch(textbox.Text, "^\\d*\\.?\\d*$") && textbox.Text != "")
{
int txtPos = textbox.SelectionStart - 1;
textbox.Text = textbox.Text.Remove(txtPos, 1);
textbox.SelectionStart = txtPos;
}
}