Обработка внешнего события API из метода C # - PullRequest
0 голосов
/ 04 марта 2019

Я использую API Advance Steel для создаваемой библиотеки, и мне нужно каким-то образом обрабатывать событие.

Это класс, предоставляемый API

public class OpenDatabase : IDisposable {
    public OpenDatabase();

    ~OpenDatabase();

    public UnitsSet Units { get; set; }
    public Database CADDatabase { get; }
    public ASObjectsAPI.OpenDatabase* Native { get; set; }
    public IntPtr Internal { get; }

    ...
    public event DatabaseEventHandler ObjectAppended;
    ...

    ...
    public void objectAppended(Database db, CADAccess.FilerObject fo);
    ...
    protected void raise_ObjectAppended(object value0, DatabaseEventArgs value1);

    public delegate void DatabaseEventHandler(object source, DatabaseEventArgs args);
    public delegate void IdMappingEventHandler(object source, IdMappingEventArgs args);
}

Мне нужнообработать событие ObjectAppended из другого метода.Как мне поступить?Я не знаю, как работать с событиями.

Я предполагаю, что мне нужно использовать метод objectAppended (Database, CAD.Access.FilerObject), потому что мне нужно получить этот FilerObject.

1 Ответ

0 голосов
/ 04 марта 2019

Если вы посмотрите эту документацию , вы узнаете, как подписаться на такие события:

public void SomeMethod() {
    yourOpenDatabase.ObjectAppended += ObjAppendHandler;
}

public void ObjAppendHandler(Database db, CADAccess.FillerObject fo) {
    //Insert code to handle your event...
}
...