假设我有一个名为 MyProperty 的只读依赖属性,它有一个公共 get 和一个受保护的 setter,有没有办法在 UserControl 的 XAML 上设置这个属性的初始值?
问题有两个方面:首先,您不能直接引用 XAML 上的属性,因为顶级元素是,但我已经通过以下技巧解决了该问题:
<UserControl.Style>
<Style>
<Setter Property="local:MyUserControl.MyProperty" Value="{Binding someProperty}" />
</Style>
</UserControl.Style>
这导致
The Property Setter 'MyProperty' cannot be set because it does not have an accessible set accessor.
任何想法如何在不诉诸代码的情况下解决这个问题?