В чем разница между созданием связующего самореферентного имени по имени или самореферентом через RelativeSource?
Например:
<!-- Self referential via name -->
<Window ...
x:Name="This"
DataContext="{Binding Path=Data, ElementName=This}"/>
против
<!-- Self referential via RelativeSource -->
<Window ...
x:Name="This"
DataContext="{Binding Path=Data, RelativeSource={RelativeSource Self}}"/>
В моем проекте они, похоже, ведут себя одинаково, но я использую их непосредственно в окне. Это означает, что я сразу предпочитаю первое, потому что это меньше набирает текст.
Единственное преимущество RelativeSource в его способности быть самореференциальным в (например) широко используемом стиле? Или есть какая-то дополнительная смысловая разница?