Определение слова, находящегося под курсором мыши?
Попробуйте использовать WinAPI. Приведенная ссылка под С++, перепишете под С#, например, пользуясь схожим кодом на шарп.
Не знаю, как это будет выглядеть в реале, но теоретически это можно сделать так:
если делать это на WPF, то можно после каждого пробела создавать по ячейке Grid'а, а в каждой ячейке поместить Label? в котором будет храниться слово, далее через событие MouseMove уже можно определять, какой Label находится под курсором