Sólo añadir una nota a todo lo expuesto
Por que no usas un componente que ya te controle que sólo se puedan escribir números estilo al CurrencyEdit de las RX??
Lo digo porque si se pega texto desde el portapapeles y no controlas también eso, podrán escribirte lo que quieran