Groups | Blog | Home
all groups > dotnet windows forms > february 2006 >

dotnet windows forms : Able To Have Generic User Controls in .net 2.0? / Winforms and Generics


Peter Nofelt
2/27/2006 3:03:02 PM
Hey All,

I'm wondering if I'm able to have create generic user controls in .net
2.0 much like one can create generic classes.

I would like to do this so that I can handle a set a types derived from
the same base type within a user control

Consider the following scenario:

* I create a base user control that contains a generic <ItemType>.
* Note: there exists a where clause referencing a specific base type
(see code below).
* Displays info associated to base class via specific methods.
* I derive another user control from this base control with a concrete
type
* Derived control now displays info associated with the concrete
type.

Please let me know the following:

* If this is possible
* If you have done this, what caveats exist
* Point me to any online references about the topic

Cheers,
peter

Code
=============================
== BASE USER CONTROL ==
namespace GenericWinformTest
{
public partial class UserControl1<ItemType> : UserControl
where ItemType : Animal, new()
{
internal Animal itype;
public UserControl1()
{

InitializeComponent();
itype = new ItemType();
}

private void talk_Click(object sender, EventArgs e)
{
this.textBox1.Text = itype.talk();
//talk
}
}//end class
}//end namespace

== Derived user control ==
namespace GenericWinformTest
{
public partial class dog : UserControl1<type.Dog>
{
public dog()
{

InitializeComponent();

}
}//end class
}//end namespace
Bob Powell [MVP]
2/28/2006 1:27:44 PM
Shades of ATL there...;-)

Personally I thing ATL was an absolutely horrible thing. I sincerely hope it
never comes back.


[quoted text, click to view]

AddThis Social Bookmark Button