Зачем вам использовать TextBox вместо TextBlock.
Я думаю, вы должны использовать 1 TextBlock и отформатировать текст следующим образом:
<TextBlock>
<Run FontWeight="Bold">Hello There.</Run>
<Run Foreground="Red">How are you?</Run>
<Run FontStyle="Italic">I am fine thanks!</Run>
<Run>漢字</Run>
</TextBlock>
И начните с установки 80 * 20 пробелов клавиш.
Затем реализуйте некоторые алгоритмы, чтобы найти определенный символ, и fx, чтобы установить его передний план, вырезав его из Run, в котором он находится, и сделайте несколько новых объектов Run.
И подключите некоторые события для получения новых ключей. Или используйте один текстовый блок с указателем клавиатуры.
Вы также можете получить вдохновение здесь:
http://silverlight.net/content/samples/sl2/dlrconsole/index.html
- вы можете скачать код на DLRConsole