¿Enviar mis propios argumentos a un controlador de eventos?

Estoy trabajando con AssemblyResolve específicamente. Aquí está mi código primero, luego sigue mi pregunta:

var a = AppDomain.CurrentDomain;
a.AssemblyResolve += new ResolveEventHandler(HandleIt);

Private Assembly HandleIt(object sender, ResolveEventArgs args){
    //Does stuff, returns an assembly
}

Así que agrego HandleIt a mi evento AssemblyResolve. ¿Cómo puedo agregarlo a ese evento y pasar un argumento con él como:

a.AssemblyResolve += new ResolveEventHandler(HandleIt(AnArgument));

Esto me desconcierta ya que HandleIt toma argumentos, pero ninguno se pasa explícitamente cuando se agrega al evento AssemblyResolve. Esperaría algo como:

a.AssemblyResolve += new ResolveEventHandler(HandleIt(aSender,someArgs));

Así que sí, solo quiero poder enviar otro argumento a mi función HandleIt cuando lo agregue a mi evento AssemblyResolve.

Espero que tenga sentido, gracias.

Apéndice

if(aBool){
    a.AssemblyResolve += new ResolveEventHandler(HandleA);
}
else{
    a.AssemblyResolve += new ResolveEventHandler(HandleB);
}

HandleA(object sender, ResolveEventArgs args){
    Handle(true);
}
HandleB(object sender, ResolveEventArgs args){
    Handle(false);
}
Handle(bool isA){

}

-vs-

if(aBool){
    a.AssemblyResolve += (object s, ResolveEventArgs a) => Handle(s,a,true);
}
else{
    a.AssemblyResolve += (object s, ResolveEventArgs a) => Handle(s,a,false);
}

Handle(object sender, ResolveEventArgs args, bool isA){

}

Respuestas a la pregunta(4)

Su respuesta a la pregunta