Показать сообщение отдельно
Старый 14.06.2002, 11:36   #8  
art is offline
art
Участник
 
46 / 10 (1) +
Регистрация: 11.06.2002
Адрес: Москва
Мне не нужно, не Tree, не как это можно сделать с помощью репозитария, мне нужно у динамически созданного контрола (которого нет в репозитарии) динамически перекрыть метод (возможность перекрыть в репозитарии естественно тоже нет) .

В technet мне удалось кое что нарыть, цитирую:

"....There are a few things you've to do if you want to overried methods for a form control which was created during runtime:

(1)
the form method "controlMethodOverload()" has to be called with an argument equal to "true" like
...
element.controlMethodOverload(true);
...
You should call the method either in the form's init() or run() method

(2)
on form level you have to create method(s) which are named like this:
_
the parameter-profile has to be exactly the same as a method of a "regular" form control created by drag&drop. In the method you have to declare and assign a control instance; then you can code the functionality you want, t.e.:

X++:
// my contol generated from X++ is named "AutoButton"
// this method is for overriding the clicked method....
void AutoButton_clicked()
{
    FormButtonControl       fbc = element.controlCallingMethod();  // handle to "AutoButton"
    
    fbc.clicked();                                                 // same as calling super()
    info("oh  -  it works.....");                                  // own program code
}
Have also a look in the form named "tutorial_addControl" ..."

но это не то, здесь метод создается в репозитарии...