Criar TextBox WPF que aceita apenas números [duplicados]

Esta questão já tem uma resposta aqui:

Como obtenho um TextBox para aceitar apenas entrada numérica no WPF? 28 respostas

Eu gostaria de criar um TextBox que aceita apenas valores numéricos, em um intervalo específico. Qual é a melhor maneira de implementar esse TextBox?

Pensei em derivar o TextBox e sobrescrever a validação e a coerção do TextProperty. No entanto, não tenho certeza de como fazer isso e entendo que geralmente não é recomendável derivar o controle do WPF.

Editar:
O que eu precisava era de uma caixa de texto muito básica que filtra todas as teclas que não são dígitos. A maneira mais fácil de conseguir isso é manipular o evento TextBox.PreviewTextInput:

private void textBox_PreviewTextInput(object sender, TextCompositionEventArgs e)
{
    int result;
    if (!validateStringAsNumber(e.Text,out result,false))
    {
        e.Handled = true;
    }
}

(validateStringAsNumber é a minha função que usa principalmente Int.TryParse)

Algumas das soluções sugeridas provavelmente são melhores, mas para a funcionalidade simples que eu precisava, essa solução é a mais fácil e rápida de implementar, embora seja suficiente para minhas necessidades.

questionAnswers(5)

yourAnswerToTheQuestion