Is it Possible to Make a Generic Control in .Net 3.5?(是否可以在 .Net 3.5 中进行通用控件?)
问题描述
我声明了以下通用用户控件:
I've got the following Generic usercontrol declared:
public partial class MessageBase<T> : UserControl
{
protected T myEntry;
public MessageBase()
{
InitializeComponent();
}
public MessageBase(T newEntry)
{
InitializeComponent();
myEntry = newEntry;
}
}
}
但是编译器不允许我这样做:
But the compiler won't allow me to do this:
public partial class MessageControl : MessageBase<Post>
{
public MessageControl()
{
InitializeComponent();
}
}
如何在 C# 中创建通用用户控件?
How do I create a generic user control in C#?
推荐答案
试试这个
public partial class MessageControl : MessageControlBase
{
public MessageControl()
{
InitializeComponent();
}
}
public class MessageControlBase : MessageBase<Post>
{}
让设计器工作的关键是你正在编辑的类的基类不能是泛型的.
The key to getting the designer to work is that the base class of the class you are editing must not be generic.
这篇关于是否可以在 .Net 3.5 中进行通用控件?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!