如何在C#中创建UserControl <t>?</t>

时间:2010-11-29 12:41:23

标签: c# wpf generics xaml user-controls

  

可能重复:
  Is it Possible to Make a Generic Control in .Net 3.5?

如何在Winforms或Webforms中用C#创建UserControl<T>

public partial class MyView<T> : UserControl
 { 
        public MyView()
        {
            InitializeComponent();  
        } 
 }

当我尝试这个时,我收到以下错误消息:

The name 'InitializeComponent' does not exist in the current context

是否无法在.NET 3.5中创建UserControl通用?

2 个答案:

答案 0 :(得分:3)

这是跨多个文件的部分类拆分。打开MyView.Designer.cs文件并将其设置为通用文件。

答案 1 :(得分:3)

简短的回答是否定的!

Xaml无法在.NET 3.5中处理它。但是,您可以派生泛型类,所以

public partial class MyView : MyView<T>

但您需要在Xaml中使用TypeArgument

指定它
<my:BusinessObject x:TypeArguments="x:String"/>