将WPF控件类作为模板类

时间:2010-07-02 12:45:18

标签: c# wpf class templates user-controls

有没有办法让WPF UserControl类成为具有模板类型的类? e.g。

public partial class MyControl : UserControl

应该是:

public partial class MyControl<MyData> : UserControl

因为我总是得到MyControl的编译错误,而不是在类的自动生成部分中没有对InitializeComponents的引用。 问题是,我无法在类的xaml部分告诉usercontrol是MyControl<MyData>类型。我甚至试过MyControl&lt;MyData&gt; ......

1 个答案:

答案 0 :(得分:2)

不,您不能在XAML中声明泛型类型。来自http://social.msdn.microsoft.com/forums/en-US/wpf/thread/02ca0499-80af-4c56-bb80-f1185a619a9e

  

您好,您可以使用泛型   你不使用XAML。但不幸的是,   如果你想使用XAML来定义你的   控制,你不能使用泛型...

您可以通过在根标记上放置x:TypeArguments属性来在XAML中创建继承自泛型类型的控件,但控件本身必须具体。