Хм, тогда поясню. Времени сейчас не так много чтобы каждый день сюда заходить, хотя время от времени ленту проверяю. С недавних пор стал замечать что на вопрос подписываюсь, комментарий оставляю а потом к нему не возвращаюсь - банально вылетает из головы. Теперь взял за правило писать комментарий чтобы мне напоминали ;-)
Ответ написали, надеюсь он будет хоть немного полезен. Если какие-то моменты будут не до конца понятны - уточняйте, остановлюсь подробнее.
Если брать в целом то код на самом деле нормальный. Самое главное что он выполняет поставленную цель. Да, многое можно улучшить, но идеал не достижим, а остальное придет если не опускать руки. Ставьте новые задачи, участвуйте в OS проектах, нарабатывайте опыт в том числе читая чужой код и проводя ревью и вы заметите что предлагаемые решения становятся лучше и лучше
Ledington, ага, значит общая ширина известна, просто два цикла, внешний меняете координату стартовой точки с крестиком(0 или 1 в зависимости от четности), во внутреннем цикле с шагом в 2 просто отображаете символ через Console.Write. Это для второй части таблицы.
It is expected that all developers using Fody either become a Patron on OpenCollective, or have a Tidelift Subscription. See Licensing/Patron FAQ for more information.
Untiwe, CallerMemberName это вспомогательный аттрибут который, если значение опционального параметра будет равно значению по умолчанию, подставит туда название вызвавшего его члена. В вашем случае это свойство с названием TeamCounter.
Совет: используйте nameof вместо магических строк при явном указании измененного свойства.
Возвращаясь к первой части вашего вопроса. Обратите внимание на то что происходит в методе OnPropertyChanged: вызывая событие PropertyChange вы буквально говорите что произошло изменение значения свойства с названием prop. Если вы туда передаете бессмыслицу, то ничего не произойдет - ведь ваш интерфейс (ui) никак не связан с тем что вы туда передали.
Nik Faraday, вам нужно уже сейчас учиться разделять логику от представления (отображения). В простейших случаях Model можно опустить(совместить) с VM.
Если под ".cs" файлами вы понимаете файлы UserControl.xaml.cs то в простых приложениях так должно быть минимум кода, во многих случаях только конструктор и все.
Дополнительные скриншоты не нужны, вы вполне неплохо описали проблему с которой столкнулись.
В теории, возможно. На практике не имеет смысла. Какое отношение кнопка имеет к заметкам?