いいえ、C#インターフェイスは初めてです。私の理解から、インターフェースにはクラスが実装し使用できるメソッドプロトタイプが含まれています。たとえば:C#定義コードのないインターフェイスからメソッドを呼び出す
interface MyInterface {
public void printhelloworld();
}
class MyExampleClass : MyInterface {
public void exampleMethod() {
printhelloworld();
}
public void printhelloworld() {
System.Console.WriteLine("Hello, world!");
}
}
しかし、私はとのトラブルを抱えているインタフェースは、Shell32
です。具体的には、私はParseName
method of Folder
に電話をかけようとしており、そこからはInvokeVerb
method of FolderItem
です。私はクラスビューで見ているものから、
、Shell32
はのための宣言があります、
- アン・インタフェース
Folder
- 別のインターフェイス、
FolderItem
- から継承することはできませんクラス、
ShellFolderItemClass
、
私の目標は、特定のディレクトリで右クリック動詞を呼び出すことです。しかし、私が見ているところでは、インターフェイスは実装を必要とします。は、単に「メソッドを呼び出す」ことはできません。このメソッドは定義されていません。
どうすればいいですか?
あなたの 'MyExampleClass'は、インターフェイス' MyInterface'を実装していません。あなたのクラスは 'class MyExampleClass:MyInterface'として定義される必要があります。 –
さらに、インターフェイスの可視性は暗黙的に' internal'ですが、実装の可視性は 'public'です。 – Codor
@Codorインターフェイス実装の例としてコードを書いています。私は急いで質問を掲示した。 – DDPWNAGE