基本クラス (UserControl) から継承し、インターフェイス (IFrameworkClient) を実装するクラス (TabControlH60) があります。.NET Activator クラスを使用してオブジェクトをインスタンス化します。返されたインスタンスを使用して、UserControl 基本クラスにキャストできますが、インターフェイスにはキャストできません。私が得る例外はコードスニペットの下にあります。インターフェイスにキャストするにはどうすればよいですか?
object obj = Activator.CreateInstance(objType);
Type[] interfaces = obj.GetType().GetInterfaces(); // contains IFrameworkClient
m_Client = (UserControl)obj; // base class cast works
IFrameworkClient fc = (IFrameworkClient)obj; // interface cast fails
// Note: The (IFrameworkClient)obj cast works fine in the debugger Watch window.
{"Unable to cast object of type 'FPG.H60.AFF.TabControlH60' to type
'FPG.AFF.Interfaces.IFrameworkClient'."}