我需要创建一个具有某些功能(如拖动、最小化等等)的基本用户控件。现在我需要一堆其他用户控件来继承它并添加它们的内容。
我想要一个选项来添加新的用户控件,它只实现了基本控件的一部分,并保留了其余的元素和功能。
如何将基本用户控件中的某个元素(网格、stackpanael、..whatever..)绑定到新控件?(没有在后面的代码中加载 xaml)
我基本上想在来自不同用户控件的基本用户控件上的专用元素中“植入”一个 xaml 元素。
我需要创建一个具有某些功能(如拖动、最小化等等)的基本用户控件。现在我需要一堆其他用户控件来继承它并添加它们的内容。
我想要一个选项来添加新的用户控件,它只实现了基本控件的一部分,并保留了其余的元素和功能。
如何将基本用户控件中的某个元素(网格、stackpanael、..whatever..)绑定到新控件?(没有在后面的代码中加载 xaml)
我基本上想在来自不同用户控件的基本用户控件上的专用元素中“植入”一个 xaml 元素。
如果您编写自定义控件,则可以在模板中使用的控件之一称为“ContentControl”。然后,当您在页面上使用自定义控件时,您可以在 xaml 中指定内容将是什么。因此,您可以在其中放入 Grid、StackPanel 等任何东西。
但请注意,编写自己的自定义控件很少由第三方组件供应商完成,因为它需要相当深入的 SL 知识(例如,如何使用依赖属性)。更常用的是“用户控件”,它更容易使用并且不需要这些知识。我通常首先尝试使用 UserControl 完成我需要的事情,如果遇到障碍,则切换到 CustomControl。
但是大多数现有控件已经具有您描述的功能 - 拖放、最小化等。SL 已经拥有丰富的 UI 控件集,因此一个很好的起点是查看现有控件中的一个是否具有您所描述的大部分功能需要,然后从那里拿走。
格雷格