Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

События

40K
03 мая 2009 года
AL4X
12 / / 21.04.2009
Можно ли передать события по сылке, создать на него указатель?

Короче вот код:
CLR синтаксис

public ref class MyComponenta: Component
{
ref class CopyCreator{
...
public:
event RWEndActionEventHandler^ OnEndScan;
event RWEndActionEventHandler^ OnEndSaving;
event RWEndActionEventHandler^ OnEndReading;
...
};
...
public:
...
event RWEndActionEventHandler^ OnEndScan;
event RWEndActionEventHandler^ OnEndSaving;
event RWEndActionEventHandler^ OnEndReading;
event RWEndActionEventHandler^ OnEndSearching;
}


фактически события в класе "CopyCreator" должны вызывать события класа "MyComponenta".

Но делать екземпляр "MyComponenta" нельзя, это компонента в режыме разработки.

Как лучше мне оформить такое?
5
03 мая 2009 года
hardcase
4.5K / / 09.08.2005
Цитата: AL4X
Можно ли передать события по сылке, создать на него указатель?

Совсем не понятно чего вы хотите сделать.
Вы хотите пробросить события из класса CopyCreator на соответсвующие в MyComponenta?

Код:
public ref class MyComponent {

public:
    event EventHandler^ OnSomething;


    ref class EventWrapper {
   
    public:
        EventWrapper(MyComponent^ owner) {
            this->_owner = owner;
        }

        event EventHandler^ OnSomething {
            void add(EventHandler^ value) {
                _owner->OnSomething += value;
            }
            void remove(EventHandler^ value) {
                _owner->OnSomething -= value;
            }            
        }

    private:
        MyComponent^ _owner;

    };

};
40K
04 мая 2009 года
AL4X
12 / / 21.04.2009
Цитата:
Совсем не понятно чего вы хотите сделать.



Надо чтобы если в подклассе возбуждалось событие, то и в первом классе оно возбуждалось.
Там постучали и тут постучали.

40K
04 мая 2009 года
AL4X
12 / / 21.04.2009
Просто внутренний клас, он рабочий, а внешний, он токо играет роль инетфейса для другого програмиста, "костюмчик" как бы.
5
04 мая 2009 года
hardcase
4.5K / / 09.08.2005
Цитата: AL4X
Надо чтобы если в подклассе возбуждалось событие, то и в первом классе оно возбуждалось.
Там постучали и тут постучали.


Это невозможно сделать без передачи ссылки внутреннего класса внешнему. А код будет практически таким же, что я привел.

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог