Как ограничить текстовое поле в C #, чтобы получать только цифры и (точка «.» Или запятая «,»), после «.» Или «,» разрешить только 2 цифры

я пытаюсь разработать код для ограничения TextBox с использованием C #, чтобы разрешить только ввод чисел + запятая (",") или точка (".") + только 2 числа после точки или запятой. Таким образом, вы можете увидеть возможные числа, которые можно ввести:

3213,04 = OK
3211,664 = Not
32.31 = OK
32.3214 = Not
334,,00 = Not
3247,.00 = Not
214.,00 = Not
32.. = Not
8465,0 = Ok
654.0 = Ok

Понял Мою цель? Я разработал код ниже

private void txtValormetrocubico_KeyPress(object sender, KeyPressEventArgs e)
{
    if (txtValormetrocubico.TextLength >= 0 && (e.KeyChar == (char)Keys.OemPeriod || e.KeyChar == (char)Keys.Oemcomma))
    {
        //tests 
    }
    else
    {
        if (!char.IsControl(e.KeyChar)
            && !char.IsDigit(e.KeyChar)
            && e.KeyChar != '.' && e.KeyChar != ',')
        {
            e.Handled = true;
        }
        // only allow one decimal point
        if (e.KeyChar == '.' && (sender as TextBox).Text.IndexOf('.') > -1)
        {
            e.Handled = true;
        }

        if (e.KeyChar == ','  && (sender as TextBox).Text.IndexOf(',') > -1)
        {
            e.Handled = true;
        }
    }
}

Ответы на вопрос(3)

Ваш ответ на вопрос