当前位置: 首页 > 编程语言 > C#

WPF:自定义控件中的多个内容呈现器?

时间:2023-04-10 17:35:02 C#

WPF:自定义控件中的多个内容呈现器?我正在尝试使用需要2个或更多由子控件定义的XAML区域的自定义控件-从该控件继承。我想知道是否有一种方法可以定义多个内容提供者和一个充当默认内容呈现器的方法这可能吗,我如何在自定义控件的模板中定义它?模板可以像这样绑定单个ContentPresenter实例(我在这里只设置了一个属性,但您可能想设置其他属性):控件本身应该为内容公开两个属性,并使用ContentPropertyAttribute设置默认值:[ContentProperty("Content1")]publicclassMyControl:Control{//Content1和Content2的依赖属性//您可能还需要Content1Template、Content2Template、Content1TemplateSelector、Content2TemplateSelector}您可以将“ItemsControl”与自定义模板一起使用。这是另一个不需要制作自定义控件的选项,并且比使用ItemsControl更安全(如果类型安全是您想要的……也许不是):……使用依赖项!创建适当类型的附加属性。我们恰好需要一个文本控件,所以我制作了一个字符串TextContent附加属性。然后从模板创建一个TemplateBinding并在Xaml中实例化时也将其设置在那里。工作得很好。以上是C#学习教程:WPF:Multiplecontentpresentersincustomcontrols?如果所有分享的内容对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处: