Я склонен использовать Поведения, чтобы добавить функциональность, которая вносит видимые изменения. Принимая во внимание, что я использую вложенные свойства, чтобы добавить дополнительную информацию к объекту, который впоследствии используется другими объектами.
например. Grid.Row создает хорошее присоединенное свойство, так как оно используется сеткой, а не целью. С другой стороны, автозамена будет вести себя хорошо, так как это сделает видимые изменения на объекте.