Вы должны быть в состоянии сделать это просто отлично, используя
<MyControl Width="{Binding ElementName=SizeSlider, Path=Value}"/>
Только установив Path
, вы предполагаете, что в текущем DataContext будет существовать нечто с именем SizeSlider
.
Я однажды сделал это в коде, и это сработало:
var binding = new Binding("Value") { Source = slider };
BindingOperations.SetBinding(b, WidthProperty, binding);
BindingOperations.SetBinding(b, HeightProperty, binding);
Так, очевидно
<MyControl Width="{Binding Source=SizeSlider, Path=Value}"/>
может быть другим способом сделать это.