Pergunta

Então eu correr em um obstáculo, aparentemente, o método get_events só é "incluído" com a classe ExtenderControl.

O que eu preciso fazer:

Ser capaz de chamar o método get_events Javascript usando um ScriptControl desde usando um ExtenderControl não é realmente possível neste momento.

Estou esperando há uma maneira fácil de ter herdar objeto javascript do ScriptControl de algo (se isso é mesmo possível).

Foi útil?

Solução

Acontece que o método get_events é realmente simples para criar. Você só precisa de um campo para segurar um dicionário, um par de linhas de código, e algo para chamar o evento, se necessário:

getEvents: function() 
{
    if (this._events == null) 
    {
        this._events = new Sys.EventHandlerList();
    }

    return this._events;
},

E agora para acesso:

onItemSelected: function(args)
{
   this.raiseEvent('userItemSelected', args);
},

raiseEvent: function(eventName, eventArgs)
{
    var handler = this.getEvents().getHandler(eventName);
    if(handler)
    {
        handler(this._autoComplete, eventArgs);
    }

},

Basicamente eventos é apenas um dicionário que contém o nome do evento e a referência ao método de chamada. Depois de ter o método (manipulador), é apenas uma questão de chamá-lo.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top