<p>I need a member of my class to be a Control, and for it to implement an interface we define.</p>

<p>If I declare it like this...</p>

<pre><code>public class MyClass
{
    public Control MyMember;
}
</code></pre>

<p>... then I don't get the interface methods, but if I declare it like this...</p>

<pre><code>public class MyClass
{
    public IMyInterface MyMember;
}
</code></pre>

<p>...then I don't get the Control methods.  Is there a way to specify that MyMember must be initialised to a type that inherits from both?  I can't find one on MSDN.  Something like...</p>

<pre><code>public class MyClass
{
    public Control : IMyInterface MyMember;
}
</code></pre>

<p>... or  ...</p>

<pre><code>public class MyClass
{
    public Control MyMember : IMyInterface;
}
</code></pre>

<p>... except that neither of those work.  Can I specify interfaces when I declare a member, and if so, how?</p>

Use the power of inheritance on the interface
```
```
public interface IMyInterface : Control
{
  ..
}
```
```
Now you say you want a control with some special methods.
EDIT:
TcKs is of course right.. you can't inherit an interface from a concrete class.
One way of solving this problem could be to extend the interface with a property or method that returns a control.
Sample:
```
```
public interface IMyInterface 
{
  Control Control { get; }

  [..rest of the definition..]
}
```
```
and implement it like that:
```
```
class MyControl : Control, IMyInterface
{
  public Control Control { get { return this; } }

  [..rest of the implementation..]
}
```
```