私はカスタムイベントをC++/ CLIで書いています(私はほとんどadd / removeメソッドだけを気にしています):
event EventHandler<XyzEventArgs^> ^Xyz
{
void add(EventHandler<XyzEventArgs^> ^handler);
void remove(EventHandler<XyzEventArgs^> ^handler);
void raise(Object ^sender, XyzEventArgs ^e);
}
すべてがうまく機能しますが、C#でIntellisenseを見ると、見苦しいパブリックraise_Xyzメソッドが表示されます。
イベントを非公開にせずにそれを隠す方法について何かアイデアはありますか?
どんな助けでも大歓迎です。
編集:
パブリックraise_Xyzメソッドを別の可視性修飾子(私の場合は内部)でマークすることにより、それらを排除することができました。これは、クラスの外部からイベントを発生させることができないことを意味します。それは私にとっては大丈夫です。しかし、私は単純なイベントでさえ気づきました
public: event EventHandler ^XXX;
raise_XXXメソッドを生成し、それらは保護されます。それを防ぐ方法はありますか?