The following code could implement the thousands separator. Is it suitable for your situation?
The code of xaml:
<TextBox Name="textBox" TextChanged="textBox_TextChanged"/>
The code of xaml.cs:
private void textBox_TextChanged(object sender, EventArgs e)
{
if (!string.IsNullOrEmpty(textBox.Text))
{
System.Globalization.CultureInfo culture = new System.Globalization.CultureInfo("en-US");
var valueBefore = Int64.Parse(textBox.Text, System.Globalization.NumberStyles.AllowThousands);
textBox.Text = String.Format(culture, "{0:N0}", valueBefore);
textBox.Select(textBox.Text.Length, 0);
}
}
The result picture: