Советую посмотреть такой паттерн как MVVM, взять какой нибудь фреймворк MVVMLight, и потом просто привязываются свойства вьюмодели и готово, а так придется событие на изменение выделенного элемента делать на первый датагрид, в котором уже программно второму присваивать новый список.
https://stackoverflow.com/questions/1190423/using-...
вот менять размер окна
настройки шрифта хранятся в Компьютер\HKEY_CURRENT_USER\SOFTWARE\Microsoft\Notepad, iPointSize и lfFaceName, если их нет, то по умолчанию.
Основной фреймворк это net45, библиотека собирается под netcoreapp3.1, они не совместимы, чтобы собрать с 4.5 совместимую библиотеку, TargetFramework должен быть netstandart1.1
1. Массив 7х7, для каждого, ходим помечая посещенные клетки, проверяем перед ходом, выход за пределы или занятость, и меняем направление
2. делаем одномерный массив координат спирали, и проходим по ней, сразу зная какие будут координаты.