Извлечение MultiBinding и IMultiValueConverter . Это позволит вам привязать два исходных свойства и преобразовать их в одно значение для вашей позиции.
РЕДАКТИРОВАТЬ: Похоже, что вы действительно хотите здесь сделать, это анимировать точку, а не разделять значения слева и сверху, поэтому это, вероятно, не относится к вашему случаю. Настоящая проблема здесь в том, что у вас есть двусторонняя проблема; это свойство представляет ту же информацию, что и Top и Left, поэтому, если вы измените его, то Top и Left должны измениться. Точно так же, поскольку Top и Left являются изменяемыми, если они изменяются, вы действительно хотите, чтобы ваша собственность отражала это.
Один из вариантов - зарегистрировать обработчик измененных свойств для LeftProperty и TopProperty. Теперь, когда они изменятся, обновите свой PositionProperty. Вы должны быть осторожны, чтобы не вызывать повторные обновления (я меняю Left, который меняет Position, который меняет Left, который ...)