При использовании флажка обычный подход состоит в том, чтобы привязать ischecked и действовать в этом установщике. Здесь используется текст, а не bool, но вы можете видеть, что в установщике вызывается метод. https://social.technet.microsoft.com/wiki/contents/articles/30564.wpf-uneventful-mvvm.aspx#Change_of_Variable
У вас есть повторяющаяся группа функций в этом наборе флажков.
Обычный подход - привязать список или наблюдаемую коллекцию моделей просмотра к источнику элемента элемента управления. Шаблон этих данных в вашем пользовательском интерфейсе. Здесь у вас будут флажки. Каждая из ваших моделей просмотра строк будет содержать данные о порте. Имя и еще много чего.
Если вам особенно нужна команда, вы можете связать ICommand, например, delegatecommand или relaycommand, из:
Модель просмотра строки - в этом случае она "знает", какой порт действовать. И ваш код, который делает что-то с этим портом, находится в модели просмотра строки.
или
В модели просмотра окна, и в этом случае модель просмотра строки является текстом кнопки, и это передается как параметр для ICommand.
Оба они являются обычным сценарием ios работа с кнопками, и вы сможете найти код в Google.
Привязка IsChecked будет проще и, следовательно, более обычна, хотя .