2013-11-15 4 views
1

Я пишу класс, который будет служить контейнером IE WebBrowser и который также будет реализовывать интерфейс IDispatch, поэтому некоторые из его методов имеют атрибуты DispID:«общедоступный» и «внутренний» класс C#, реализующий IDispatch

public class IEContainer : 
     IOleClientSite, 
     IOleInPlaceSite 
{ 

... 
     [DispId(HTMLDispIDs.DISPID_AMBIENT_DLCONTROL)] 
     public int Idispatch_AmbiantDlControl() 
     { 
      return (int)m_nFlags; 
     } 
... 

} 

Это прекрасно работает и метод Idispatch_AmbiantDlControl вызывается только тогда, когда класс «общественность». Если я объявляю его «внутренним», вызовы IDispatch больше не принимаются. Может кто-нибудь объяснить, почему? Все вокруг? Я не хочу, чтобы этот класс был общедоступным.

Заранее спасибо.

ответ

0

Попробуйте изменить "public" для "private"

Смежные вопросы