如何解决通过Blend访问嵌套的UserControl的ContentPresenter
|| 我已经在Blend中创建了一个简单的UserControl,其中包含(以及其他内容)ContentPresenter。 我希望能够将此UserControl放到另一个UserControl上,然后将其他控件添加到其ContentPresenter中,但是当我将它包含在第二个UserControl中时,我看不到这样做的方法。 使用Blend,如何公开底层的ContentPresenter,以便可以直观地设置其内容(即:使它们在“对象和时间轴”窗口中显示为子控件)?解决方法
如果是内容控件,则要添加子控件,请将其设置为控件的内容
<MyContentControl>
<Grid x:Name=”ImAChild”>
</Grid>
</MyContentControl>
编辑:现在,考虑到这一点,您可能需要做一些事情以使Content属性成为由控件内部xaml填充的默认属性,我不记得确切是什么了,但是如果您的xaml看起来像这样(下)没关系
<MyContentControl>
<MyContentControl.Content>
<Grid x:Name=”ImAChild”>
</Grid>
</MyContentControl.Content>
</MyContentControl>
编辑2
您的MyUserControl
需要一个类型为object
的MyContent
属性,并且必须以某种方式显示该属性的值。您可能可以在MyContent属性的设置器中创建它,但是看起来好像是“ hacky”
<MyUserControl>
<MyUserControl.MyContent>
<Grid x:Name=”ImAChild”>
</Grid>
</MyContentControl.MyContent>
</MyUserControl>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。